export declare const OPENAI_V1_CHATKIT_SESSIONS_ENDPOINT: "/v1/chatkit/sessions";
export type OpenAiV1ChatkitSessionsMethod = "POST";
export type OpenAiV1ChatkitSessionsGate = {
    accepted: boolean;
    reason?: string;
};
export type OpenAiV1ChatkitSessionsTrace = {
    correlationId?: string;
    callerId?: string;
};
export type OpenAiV1ChatkitSessionsMockCallerRequest = {
    provider: "openai";
    endpoint: typeof OPENAI_V1_CHATKIT_SESSIONS_ENDPOINT;
    url: string;
    method: OpenAiV1ChatkitSessionsMethod;
    requestBody: Record<string, unknown>;
    headers: {
        authorization?: string;
        organization?: string;
        project?: string;
    };
    timeoutMs: number;
    trace: OpenAiV1ChatkitSessionsTrace;
};
export type OpenAiV1ChatkitSessionsMockCallerResponse = {
    status: number;
    body?: unknown;
    headers?: Record<string, string>;
};
export type OpenAiV1ChatkitSessionsMockCaller = (request: OpenAiV1ChatkitSessionsMockCallerRequest) => Promise<OpenAiV1ChatkitSessionsMockCallerResponse> | OpenAiV1ChatkitSessionsMockCallerResponse;
export type OpenAiV1ChatkitSessionsInvocationRequest = {
    requestBody?: unknown;
    baseUrl?: string;
    apiKey?: string;
    organizationId?: string;
    projectId?: string;
    timeoutMs?: number;
    trace?: OpenAiV1ChatkitSessionsTrace;
    contract?: OpenAiV1ChatkitSessionsGate;
    governance?: OpenAiV1ChatkitSessionsGate;
    dryRun?: boolean;
    mockCaller?: OpenAiV1ChatkitSessionsMockCaller;
};
export type OpenAiV1ChatkitSessionsErrorCode = "MISSING_REQUEST" | "MISSING_REQUEST_BODY" | "INVALID_REQUEST_BODY" | "INVALID_TIMEOUT" | "CONTRACT_REJECTED" | "GOVERNANCE_REJECTED" | "MISSING_MOCK_CALLER" | "UPSTREAM_AUTH_FAILED" | "UPSTREAM_RATE_LIMITED" | "UPSTREAM_TIMEOUT" | "UPSTREAM_UNAVAILABLE" | "UPSTREAM_RESPONSE_DRIFT" | "UPSTREAM_ERROR";
export type OpenAiV1ChatkitSessionsErrorBoundary = "input" | "contract" | "governance" | "provider";
export type OpenAiV1ChatkitSessionsInvocationError = {
    code: OpenAiV1ChatkitSessionsErrorCode;
    message: string;
    boundary: OpenAiV1ChatkitSessionsErrorBoundary;
    providerSafe: true;
};
export type OpenAiV1ChatkitSessionsProviderEnvelope = {
    provider: "openai";
    endpoint: typeof OPENAI_V1_CHATKIT_SESSIONS_ENDPOINT;
    url: string;
    method: OpenAiV1ChatkitSessionsMethod;
    requestBody: Record<string, unknown>;
    status?: number;
    rawResponse?: unknown;
    responseHeaders?: Record<string, string>;
    authState: "missing" | "provided";
    capabilitySignals: {
        actualInvocationLayer: true;
        providerShapePreserved: true;
        endpoint: typeof OPENAI_V1_CHATKIT_SESSIONS_ENDPOINT;
        mockable: true;
    };
    trace: OpenAiV1ChatkitSessionsTrace;
    dryRun: boolean;
    unsafeSideEffects: false;
};
export type OpenAiV1ChatkitSessionsInvocationResult = {
    ok: true;
    envelope: OpenAiV1ChatkitSessionsProviderEnvelope;
    events: readonly string[];
} | {
    ok: false;
    error: OpenAiV1ChatkitSessionsInvocationError;
    events: readonly string[];
};
export declare function invokeOpenAiV1ChatkitSessions(request?: OpenAiV1ChatkitSessionsInvocationRequest): Promise<OpenAiV1ChatkitSessionsInvocationResult>;
