import type { CreateOkraOptions, CompletionEvent, CompletionOptions, DeploymentCreateOptions, DeploymentCreateResult, DeploymentListItem, DeployOptions, DeployResult, DocumentStatus, EntitiesResponse, GenerateOptions, GenerateResult, OkraJob, OkraOptions, OkraRuntime, Page, PublishResult, QueryResult, ShareLinkOptions, ShareLinkResult, SessionAttachOptions, SessionCreateOptions, OkraSession, StructuredSchema, UploadInput, UploadOptions, WaitOptions } from './types'; export declare class OkraClient { private readonly baseUrl; private readonly apiKey?; private readonly sharedSecret?; private readonly fetchImpl; readonly sessions: { create: (source: UploadInput | { documentId: string; } | { collectionId: string; }, options?: SessionCreateOptions) => Promise; from: (documentId: string, options?: SessionAttachOptions) => Promise; }; readonly deployments: { create: (source: UploadInput | string, options?: DeploymentCreateOptions) => Promise; list: (opts?: { documentId?: string; collectionId?: string; }) => Promise<{ deployments: DeploymentListItem[]; }>; getForDocument: (documentId: string) => Promise; }; constructor(options: OkraOptions); private initSession; upload(input: UploadInput, options?: UploadOptions): Promise; status(documentId: string, signal?: AbortSignal): Promise; wait(documentId: string, options?: WaitOptions): Promise; pages(documentId: string, options?: { range?: string; signal?: AbortSignal; }): Promise; page(documentId: string, pageNumber: number, signal?: AbortSignal): Promise; /** * Get a direct download URL for the original PDF. * The returned URL requires the API key header for auth. */ downloadUrl(documentId: string): string; entities(documentId: string, options?: { type?: string; limit?: number; offset?: number; signal?: AbortSignal; }): Promise; query(documentId: string, sql: string, signal?: AbortSignal): Promise; stream(documentId: string, query: string, options?: CompletionOptions, completionPath?: string): AsyncGenerator; generate(documentId: string | string[], query: string, options?: GenerateOptions & { schema?: undefined; }, completionPath?: string): Promise; generate(documentId: string | string[], query: string, options: GenerateOptions & { schema: StructuredSchema; }, completionPath?: string): Promise>; private generateStructured; modelEndpoint(documentId: string): string; publish(documentId: string, signal?: AbortSignal): Promise; shareLink(documentId: string, options?: ShareLinkOptions): Promise; deploy(documentIds: string[], options?: DeployOptions): Promise; private authHeaders; private rawRequest; private requestJson; private parseBody; } export declare function createOkra(options: CreateOkraOptions): OkraRuntime; //# sourceMappingURL=client.d.ts.map