export type DeployRemoteOperation = 'releases.register' | 'releases.list' | 'releases.get' | 'plans.create' | 'plans.approve' | 'plans.apply' | 'plans.list' | 'plans.get' | 'capabilities' | 'orphans' | 'stepup.start' | 'stepup.verify' | 'deployments.list' | 'deployments.get' | 'deployments.journal' | 'deployments.redeploy' | 'deployments.rollback' | 'deployments.traffic' | 'environments.list' | 'environments.policy' | 'environments.history' | 'functions.list' | 'versions.list' | 'versions.history' | 'versions.deprecate' | 'versions.undeprecate' | 'versions.retire'; export interface IDeployRemoteArgs { file?: string; id?: string; product?: string; function?: string; version?: string; env?: string; /** "function" or "service": narrows a listing. */ kind?: string; /** Only what was applied through this cloud connection. */ connection?: string; reason?: string; sunset?: string; replacement?: string; requireApproval?: string; allowAgentApply?: string; /** A release to put back (rollback). */ releaseHash?: string; /** The share of traffic, as a whole number (traffic). */ percent?: string; /** A JSON file of runtime settings, replacing the ones the deployment has. */ runtimeFile?: string; /** A JSON file describing what the provider holds, needed only while the control plane does not read the provider itself. */ observedFile?: string; /** Narrows a listing of plans: blocked, pending_approval, approved, ready, applied or expired. */ stage?: string; /** A function or service name, to narrow a listing of releases. */ name?: string; /** The region to look in (orphans). */ region?: string; /** Step-up: what a code is good for, or one of the shortcuts that builds it. */ scope?: string; plan?: string; retire?: boolean; policy?: boolean; /** The six-digit code from the person's email. */ code?: string; /** The name of an environment variable that holds the grant a verified code earned, sent with the one change it was earned for. */ grantEnv?: string; } /** What a step-up code is good for. Must match what the control plane asks for, so a code for one change cannot be spent on another. */ export declare const stepUpScopes: { plan: (planHash: string) => string; retire: (product: string, name: string, version: string) => string; policy: (product: string, env: string) => string; }; /** The header that carries a grant, read from the environment so it is never typed on a command line. */ export declare function grantHeaders(grantEnv: string | undefined, env?: Record): Record; /** Calls made on behalf of an agent say so, so the control plane never lets them approve or retire. */ export declare function actorHeaders(): Record; /** Talks to the deploy control plane in the active workspace. Prints the result as JSON. */ export declare function runDeployRemote(operation: DeployRemoteOperation, args: IDeployRemoteArgs): Promise;