export type ExecutionPolicy = { executionTimeout?: number; lowPriority?: boolean; ttl?: number; }; export type S3Config = { accessId: string; accessSecret: string; bucketName: string; endpointUrl: string; objectPath?: string; }; export type EndpointInputPayload = { input: any; webhook?: string; webhookV2?: string; s3Config?: S3Config; policy?: ExecutionPolicy; }; export type EndpointIncompleteOutput = { delayTime?: number; status: string; id: string; }; export type EndpointCompletedOutput = { status: string; id: string; output: any; executionTime: number; delayTime: number; }; export type EndpointOutput = EndpointCompletedOutput | EndpointIncompleteOutput; export type EndpointStreamOutput = { status: string; stream: [any]; }; export type CancelOutput = { status: string; id: string; executionTime: number; delayTime: number; }; export type HealthCheck = { jobs: { completed: number; failed: number; inProgress: number; inQueue: number; retried: number; }; workers: { idle: number; initializing: number; ready: number; running: number; throttled: number; }; }; export type PurgeQueueOutput = { removed: number; status: string; }; export type SdkOptions = { baseUrl: string; }; export declare const runpodServerlessBaseUrlProd = "https://api.runpod.ai/v2"; export declare const runpodServerlessBaseUrlDev = "https://dev-api.runpod.ai/v2"; export declare const runSync: import("ts-toolbelt/out/Function/Curry").Curry<(baseUrl: string, apiKey: string, endpointId: string, request: EndpointInputPayload, timeout?: number) => Promise<{ started: boolean; completed: boolean; delayTime?: number | undefined; status: string; id: string; } | { started: boolean; completed: boolean; status: string; id: string; output: any; executionTime: number; delayTime: number; } | { started: boolean; completed: boolean; succeeded: boolean; delayTime?: number | undefined; status: string; id: string; } | { started: boolean; completed: boolean; succeeded: boolean; status: string; id: string; output: any; executionTime: number; delayTime: number; }>>; export declare const run: import("ts-toolbelt/out/Function/Curry").Curry<(baseUrl: string, apiKey: string, endpointId: string, request: EndpointInputPayload, timeout?: number) => Promise>; export declare const status: import("ts-toolbelt/out/Function/Curry").Curry<(baseUrl: string, apiKey: string, endpointId: string, requestId: string, timeout?: number) => Promise>; export declare function stream(baseUrl: string, apiKey: string, endpointId: string, requestId: string, timeout?: number): AsyncGenerator; export declare const health: import("ts-toolbelt/out/Function/Curry").Curry<(baseUrl: string, apiKey: string, endpointId: string, timeout?: number) => Promise>; export declare const purgeQueue: import("ts-toolbelt/out/Function/Curry").Curry<(baseUrl: string, apiKey: string, endpointId: string, timeout?: number) => Promise>; declare class Endpoint { endpointId: string; baseUrl: string; private apiKey; constructor(baseUrl: string, apiKey: string, endpointId: string); runSync(request: EndpointInputPayload, timeout?: number): Promise; run(request: EndpointInputPayload, timeout?: number): Promise; status(requestId: string, timeout?: number): Promise; statusSync(requestId: string, timeout?: number): Promise; stream(requestId: string, timeout?: number): AsyncGenerator; cancel(requestId: string, timeout?: number): Promise; health(timeout?: number): Promise; purgeQueue(timeout?: number): Promise; } declare class RunpodSdk { private apiKey; baseUrl: string; constructor(apiKey: string, options: SdkOptions); endpoint(endpointId: string): Endpoint | null; } declare const _default: (apiKey: string, options?: SdkOptions) => RunpodSdk; export default _default;