export type OpenAIAudioVoiceBoundary = "input" | "provider" | "contract" | "governance" | "scope";
export type OpenAIAudioVoiceGate = {
    accepted: boolean;
    reason?: string;
};
export type OpenAIAudioVoiceSample = {
    id?: string;
    name?: string;
    mimeType?: string;
    byteLength?: number;
    sourceRef?: string;
};
export type OpenAIAudioVoiceProviderError = {
    status?: number;
    code?: string;
    message?: string;
    timedOut?: boolean;
    rateLimited?: boolean;
    authFailed?: boolean;
    endpointAvailable?: boolean;
};
export type OpenAIAudioVoiceRequest = {
    requestId?: string;
    name?: string;
    consentId?: string;
    audioSample?: OpenAIAudioVoiceSample;
    body?: Readonly<Record<string, unknown>>;
    apiKeyRef?: string;
    organizationId?: string;
    projectId?: string;
    timeoutMs?: number;
    requestedScopes?: readonly string[];
    allowedScopes?: readonly string[];
    dryRun?: boolean;
    trace?: Readonly<Record<string, string | undefined>>;
    providerResponse?: unknown;
    providerError?: OpenAIAudioVoiceProviderError;
    contract?: OpenAIAudioVoiceGate;
    governance?: OpenAIAudioVoiceGate;
};
export type OpenAIAudioVoiceErrorCode = "MISSING_NAME" | "MISSING_CONSENT" | "MISSING_AUDIO_SAMPLE" | "INVALID_REQUEST_BODY" | "INVALID_TIMEOUT" | "CONTRACT_REJECTED" | "GOVERNANCE_REJECTED" | "SCOPE_DENIED" | "REAL_PROVIDER_CALL_NOT_ALLOWED" | "PROVIDER_AUTH_FAILED" | "PROVIDER_RATE_LIMITED" | "PROVIDER_TIMEOUT" | "PROVIDER_ENDPOINT_UNAVAILABLE" | "PROVIDER_RESPONSE_DRIFT" | "PROVIDER_REJECTED";
export type OpenAIAudioVoiceError = {
    code: OpenAIAudioVoiceErrorCode;
    message: string;
    boundary: OpenAIAudioVoiceBoundary;
    safeForRuntimeInspection: true;
    providerRawDetailExposed: false;
};
export type OpenAIAudioVoiceEnvelope = {
    provider: "openai";
    endpoint: "/v1/audio/voices";
    method: "POST";
    requestId: string;
    requestShape: "multipart-form-data";
    providerFields: {
        name: string;
        consent: string;
        audio_sample: OpenAIAudioVoiceSample;
    };
    body: Readonly<Record<string, unknown>>;
    auth: {
        apiKeyRef?: string;
        organizationId?: string;
        projectId?: string;
        materialPresent: boolean;
    };
    runtime: {
        timeoutMs?: number;
        requestedScopes: readonly string[];
        dryRun: true;
        unsafeSideEffects: false;
    };
    trace: Readonly<Record<string, string | undefined>>;
};
export type OpenAIAudioVoiceResponseEnvelope = {
    provider: "openai";
    endpoint: "/v1/audio/voices";
    raw: unknown;
    received: true;
    providerRawShapePromoted: false;
};
export type OpenAIAudioVoiceResult = {
    ok: true;
    request: OpenAIAudioVoiceEnvelope;
    response?: OpenAIAudioVoiceResponseEnvelope;
    capability: typeof openAIAudioVoicesDescriptor;
    events: readonly string[];
} | {
    ok: false;
    error: OpenAIAudioVoiceError;
    events: readonly string[];
};
export declare const openAIAudioVoicesDescriptor: {
    readonly provider: "openai";
    readonly layer: "actualInvocationLayer";
    readonly endpoint: "/v1/audio/voices";
    readonly method: "POST";
    readonly modality: "audio";
    readonly operation: "voice-create";
    readonly requestShape: "multipart-form-data";
    readonly providerRawShapePromoted: false;
    readonly unsafeSideEffects: false;
};
export declare function createOpenAIAudioVoiceInvocation(request?: OpenAIAudioVoiceRequest): OpenAIAudioVoiceResult;
