export type AudioReceiverSource = "user" | "application" | "runtime" | "official-module";
export type AudioReceiverBoundary = "input" | "contract" | "governance" | "scope" | "runtime-state";
export type AudioReceiverErrorCode = "MISSING_RUNTIME_ID" | "MISSING_SESSION_ID" | "MISSING_AUDIO_PAYLOAD" | "INVALID_AUDIO_PAYLOAD" | "INVALID_AUDIO_DURATION" | "RUNTIME_NOT_READY" | "CONTRACT_REJECTED" | "GOVERNANCE_REJECTED" | "SCOPE_DENIED";
export type AudioReceiverGate = {
    accepted: boolean;
    reason?: string;
};
export type RawAudioInput = {
    kind: "raw-audio";
    bytes: Uint8Array | readonly number[];
    format: string;
    durationMs?: number;
};
export type ReferencedAudioInput = {
    kind: "audio-reference";
    uri: string;
    format?: string;
    durationMs?: number;
};
export type SampledAudioInput = {
    kind: "sampled-audio";
    samples: readonly number[];
    sampleRateHz: number;
    format?: string;
    durationMs?: number;
};
export type AudioReceiverPayload = RawAudioInput | ReferencedAudioInput | SampledAudioInput;
export type AudioReceiverRequest = {
    runtimeId?: string;
    sessionId?: string;
    source?: AudioReceiverSource;
    payload?: AudioReceiverPayload;
    requestedScopes?: readonly string[];
    allowedScopes?: readonly string[];
    transcriptRequested?: boolean;
    runtimeReady?: boolean;
    contract?: AudioReceiverGate;
    governance?: AudioReceiverGate;
};
export type AudioReceiverError = {
    code: AudioReceiverErrorCode;
    message: string;
    boundary: AudioReceiverBoundary;
    safeForRuntimeInspection: true;
};
export type ReceivedAudioInput = {
    kind: "audio";
    runtimeId: string;
    sessionId: string;
    source: AudioReceiverSource;
    payloadKind: AudioReceiverPayload["kind"];
    media: {
        format: string;
        durationMs?: number;
        byteLength?: number;
        uri?: string;
        sampleCount?: number;
        sampleRateHz?: number;
    };
    samplingState: "raw" | "referenced" | "sampled";
    transcriptRequested: boolean;
    promptPackHandoff: "pending";
    providerPayloadCreated: false;
    unsafeSideEffects: false;
};
export type AudioReceiverResult = {
    ok: true;
    input: ReceivedAudioInput;
    events: readonly string[];
} | {
    ok: false;
    error: AudioReceiverError;
    events: readonly string[];
};
export declare const audioInputReceiverDescriptor: {
    readonly modality: "audio";
    readonly route: "agent_executionEngine.IOTransceiver.inputReceiver";
    readonly purpose: "normalize raw audio, audio references, or sampled audio for execution engine handoff";
    readonly providerPayloadCreated: false;
    readonly unsafeSideEffects: false;
};
export declare function receiveAudioInput(request?: AudioReceiverRequest): AudioReceiverResult;
