export declare const DEEPMIND_V1BETA_MODELS_PREDICT_LONG_RUNNING_ENDPOINT: "/v1beta/models/predictLongRunning";
export declare const DEFAULT_DEEPMIND_V1BETA_PREDICT_LONG_RUNNING_BASE_URL: "https://generativelanguage.googleapis.com";
export type DeepMindV1BetaModelsPredictLongRunningBoundary = "input" | "contract" | "governance" | "auth" | "scope" | "provider" | "response";
export type DeepMindV1BetaModelsPredictLongRunningErrorCode = "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 DeepMindV1BetaModelsPredictLongRunningGate = {
    accepted: boolean;
    reason?: string;
};
export type DeepMindV1BetaModelsPredictLongRunningRuntimeContext = {
    runtimeId?: string;
    invocationId?: string;
    traceId?: string;
    callerId?: string;
};
export type DeepMindV1BetaModelsPredictLongRunningAuthEnvelope = {
    kind: "api-key" | "oauth" | "none";
    present: boolean;
    redactedToken?: string;
};
export type DeepMindV1BetaModelsPredictLongRunningRequestEnvelope = {
    provider: "deepmind";
    apiVersion: "v1beta";
    endpoint: typeof DEEPMIND_V1BETA_MODELS_PREDICT_LONG_RUNNING_ENDPOINT;
    method: "POST";
    url: string;
    model: string;
    headers: Readonly<Record<string, string>>;
    body: unknown;
    runtime: Required<DeepMindV1BetaModelsPredictLongRunningRuntimeContext>;
    requestedScopes: readonly string[];
    grantedScopes: readonly string[];
    dryRun: boolean;
    providerCallPlanned: boolean;
    unsafeSideEffects: false;
    providerFieldsOpaque: true;
};
export type DeepMindV1BetaModelsPredictLongRunningProviderCaller = (envelope: DeepMindV1BetaModelsPredictLongRunningRequestEnvelope) => unknown | Promise<unknown>;
export type DeepMindV1BetaModelsPredictLongRunningInvocationRequest = {
    model?: string;
    body?: unknown;
    baseUrl?: string;
    headers?: Readonly<Record<string, string | undefined>>;
    auth?: DeepMindV1BetaModelsPredictLongRunningAuthEnvelope;
    runtime?: DeepMindV1BetaModelsPredictLongRunningRuntimeContext;
    requiredScopes?: readonly string[];
    allowedScopes?: readonly string[];
    contract?: DeepMindV1BetaModelsPredictLongRunningGate;
    governance?: DeepMindV1BetaModelsPredictLongRunningGate;
    dryRun?: boolean;
    mockResponse?: unknown;
    expectResponseObject?: boolean;
    caller?: DeepMindV1BetaModelsPredictLongRunningProviderCaller;
};
export type DeepMindV1BetaModelsPredictLongRunningResponseEnvelope = {
    provider: "deepmind";
    endpoint: typeof DEEPMIND_V1BETA_MODELS_PREDICT_LONG_RUNNING_ENDPOINT;
    mode: "dry-run" | "mock" | "caller";
    raw: unknown;
    providerFieldsOpaque: true;
};
export type DeepMindV1BetaModelsPredictLongRunningCapabilitySignal = {
    provider: "deepmind";
    endpoint: typeof DEEPMIND_V1BETA_MODELS_PREDICT_LONG_RUNNING_ENDPOINT;
    operation: "predict-long-running";
    rawShape: "operation" | "mock" | "dry-run";
};
export type DeepMindV1BetaModelsPredictLongRunningError = {
    code: DeepMindV1BetaModelsPredictLongRunningErrorCode;
    message: string;
    boundary: DeepMindV1BetaModelsPredictLongRunningBoundary;
    retryable: boolean;
};
export type DeepMindV1BetaModelsPredictLongRunningResult = {
    ok: true;
    request: DeepMindV1BetaModelsPredictLongRunningRequestEnvelope;
    response: DeepMindV1BetaModelsPredictLongRunningResponseEnvelope;
    capability: DeepMindV1BetaModelsPredictLongRunningCapabilitySignal;
    events: readonly string[];
} | {
    ok: false;
    error: DeepMindV1BetaModelsPredictLongRunningError;
    request?: DeepMindV1BetaModelsPredictLongRunningRequestEnvelope;
    events: readonly string[];
};
export declare function classifyDeepMindV1BetaModelsPredictLongRunningProviderError(error: unknown): DeepMindV1BetaModelsPredictLongRunningErrorCode;
export declare function invokeDeepMindV1BetaModelsPredictLongRunning(input?: DeepMindV1BetaModelsPredictLongRunningInvocationRequest): Promise<DeepMindV1BetaModelsPredictLongRunningResult>;
