@kontent-ai/sync-sdk
Version:
Sync API v2 for Kontent.ai
22 lines (21 loc) • 1.86 kB
TypeScript
import { type EmptyObject, type Header, type HttpService, type JsonValue } from "@kontent-ai/core-sdk";
import type { ZodType } from "zod/v4";
import type { PagingQuery, Query, SuccessfulHttpResponse, SyncClientConfig, SyncResponse } from "../models/core.models.js";
type ResolveToPromiseQuery<TPayload extends JsonValue, TExtraMetadata = EmptyObject> = ReturnType<Pick<Query<TPayload, TExtraMetadata>, "toPromise">["toPromise"]>;
export declare function getQuery<TPayload extends JsonValue, TBodyData extends JsonValue, TExtraMetadata = EmptyObject>(data: Parameters<typeof resolveQueryAsync<TPayload, TBodyData, TExtraMetadata>>[0]): Pick<Query<TPayload, TExtraMetadata>, "toPromise">;
export declare function getPagingQuery<TPayload extends JsonValue, TBodyData extends JsonValue, TExtraMetadata = EmptyObject>(data: Parameters<typeof resolveQueryAsync<TPayload, TBodyData, TExtraMetadata>>[0] & {
readonly canFetchNextResponse: (response: SyncResponse<TPayload, TExtraMetadata>) => boolean;
readonly continuationToken: string;
}): Pick<PagingQuery<TPayload, TExtraMetadata>, "toPromise" | "toAllPromise">;
export declare function extractContinuationToken(responseHeaders: readonly Header[]): string | undefined;
declare function resolveQueryAsync<TPayload extends JsonValue, TBodyData extends JsonValue, TExtraMetadata = EmptyObject>({ config, request, url, extraMetadata, zodSchema, continuationToken, }: {
readonly continuationToken: string | undefined;
readonly request: Parameters<HttpService["requestAsync"]>[number] & {
readonly body: TBodyData;
};
readonly extraMetadata: (response: SuccessfulHttpResponse<TPayload, TBodyData>) => TExtraMetadata;
readonly config: SyncClientConfig;
readonly url: string;
readonly zodSchema: ZodType<TPayload>;
}): ResolveToPromiseQuery<TPayload, TExtraMetadata>;
export {};