export declare const DEEPMIND_V1BETA_MODELS_STREAM_GENERATE_CONTENT_ENDPOINT: "/v1beta/models/streamGenerateContent";
export declare const DEFAULT_DEEPMIND_V1BETA_STREAM_GENERATE_CONTENT_BASE_URL: "https://generativelanguage.googleapis.com";
export type DeepMindV1BetaModelsStreamGenerateContentBoundary = "input" | "contract" | "governance" | "auth" | "scope" | "provider" | "response";
export type DeepMindV1BetaModelsStreamGenerateContentErrorCode = "MISSING_MODEL" | "MISSING_BODY" | "MISSING_RUNTIME_ID" | "CONTRACT_REJECTED" | "GOVERNANCE_REJECTED" | "SCOPE_DENIED" | "AUTH_REJECTED" | "CALLER_REQUIRED" | "PROVIDER_AUTH_FAILED" | "PROVIDER_RATE_LIMITED" | "PROVIDER_TIMEOUT" | "PROVIDER_UNAVAILABLE" | "RESPONSE_FORMAT_DRIFT" | "CALLER_FAILED";
export type DeepMindV1BetaModelsStreamGenerateContentGate = {
    accepted: boolean;
    reason?: string;
};
export type DeepMindV1BetaModelsStreamGenerateContentRuntimeContext = {
    runtimeId?: string;
    invocationId?: string;
    traceId?: string;
    callerId?: string;
};
export type DeepMindV1BetaModelsStreamGenerateContentAuthEnvelope = {
    kind: "api-key" | "oauth" | "none";
    present: boolean;
    redactedToken?: string;
};
export type DeepMindV1BetaModelsStreamGenerateContentRequestEnvelope = {
    provider: "deepmind";
    apiVersion: "v1beta";
    endpoint: typeof DEEPMIND_V1BETA_MODELS_STREAM_GENERATE_CONTENT_ENDPOINT;
    method: "POST";
    url: string;
    model: string;
    headers: Readonly<Record<string, string>>;
    body: unknown;
    runtime: Required<DeepMindV1BetaModelsStreamGenerateContentRuntimeContext>;
    requestedScopes: readonly string[];
    grantedScopes: readonly string[];
    dryRun: boolean;
    providerCallPlanned: boolean;
    unsafeSideEffects: false;
    providerFieldsOpaque: true;
};
export type DeepMindV1BetaModelsStreamGenerateContentProviderStream = AsyncIterable<unknown> | Iterable<unknown> | readonly unknown[] | unknown;
export type DeepMindV1BetaModelsStreamGenerateContentProviderCaller = (envelope: DeepMindV1BetaModelsStreamGenerateContentRequestEnvelope) => DeepMindV1BetaModelsStreamGenerateContentProviderStream | Promise<DeepMindV1BetaModelsStreamGenerateContentProviderStream>;
export type DeepMindV1BetaModelsStreamGenerateContentInvocationRequest = {
    model?: string;
    body?: unknown;
    baseUrl?: string;
    headers?: Readonly<Record<string, string | undefined>>;
    auth?: DeepMindV1BetaModelsStreamGenerateContentAuthEnvelope;
    runtime?: DeepMindV1BetaModelsStreamGenerateContentRuntimeContext;
    requiredScopes?: readonly string[];
    allowedScopes?: readonly string[];
    contract?: DeepMindV1BetaModelsStreamGenerateContentGate;
    governance?: DeepMindV1BetaModelsStreamGenerateContentGate;
    dryRun?: boolean;
    mockChunks?: readonly unknown[];
    expectAtLeastOneChunk?: boolean;
    caller?: DeepMindV1BetaModelsStreamGenerateContentProviderCaller;
};
export type DeepMindV1BetaModelsStreamGenerateContentResponseEnvelope = {
    provider: "deepmind";
    endpoint: typeof DEEPMIND_V1BETA_MODELS_STREAM_GENERATE_CONTENT_ENDPOINT;
    mode: "dry-run" | "mock" | "caller";
    chunks: readonly unknown[];
    providerFieldsOpaque: true;
};
export type DeepMindV1BetaModelsStreamGenerateContentCapabilitySignal = {
    provider: "deepmind";
    endpoint: typeof DEEPMIND_V1BETA_MODELS_STREAM_GENERATE_CONTENT_ENDPOINT;
    operation: "stream-generate-content";
    rawShape: "stream-chunks" | "mock" | "dry-run";
};
export type DeepMindV1BetaModelsStreamGenerateContentError = {
    code: DeepMindV1BetaModelsStreamGenerateContentErrorCode;
    message: string;
    boundary: DeepMindV1BetaModelsStreamGenerateContentBoundary;
    retryable: boolean;
};
export type DeepMindV1BetaModelsStreamGenerateContentResult = {
    ok: true;
    request: DeepMindV1BetaModelsStreamGenerateContentRequestEnvelope;
    response: DeepMindV1BetaModelsStreamGenerateContentResponseEnvelope;
    capability: DeepMindV1BetaModelsStreamGenerateContentCapabilitySignal;
    events: readonly string[];
} | {
    ok: false;
    error: DeepMindV1BetaModelsStreamGenerateContentError;
    request?: DeepMindV1BetaModelsStreamGenerateContentRequestEnvelope;
    events: readonly string[];
};
export declare function classifyDeepMindV1BetaModelsStreamGenerateContentProviderError(error: unknown): DeepMindV1BetaModelsStreamGenerateContentErrorCode;
export declare function invokeDeepMindV1BetaModelsStreamGenerateContent(input?: DeepMindV1BetaModelsStreamGenerateContentInvocationRequest): Promise<DeepMindV1BetaModelsStreamGenerateContentResult>;
