import type { CursorPaginationResponseMetadata } from "@devowl-wp/api";

interface IResponseMetadata extends CursorPaginationResponseMetadata {
    cacheInfo?: IResponseMetaCacheInfo;
    releaseInfo?: IReleaseInfo;
}

type ResponseMetaCacheStatus = "READY" | "PENDING" | "NOCACHE";

interface IResponseMetaCacheInfo {
    cacheHit?: boolean;
    cacheEnabled?: boolean;
    cacheGroup: string;
    cacheMapKey?: string;
    cacheStatus?: ResponseMetaCacheStatus;
}

interface IReleaseInfo {
    releaseId?: number;
    isPreReleaseEnabled?: boolean;
}

export { type ResponseMetaCacheStatus, type IResponseMetadata, type IResponseMetaCacheInfo };
