import { DeploymentTarget, DeployAdapter } from '@geenius/adapters'; import { P as ProviderDeployAdapter } from './provider-slice-Dwzdgxeb.js'; /** * @module deploy/vercel * @description SDK-free Vercel deployment slice contract. */ /** * Deployment target accepted by the Vercel provider slice. */ type VercelDeploymentTarget = DeploymentTarget & { readonly provider: "vercel"; }; /** * Vercel-scoped deployment adapter. Downstream wiring may accept a neutral * adapter, but the wrapped public slice only accepts Vercel targets. */ type VercelDeployAdapter = ProviderDeployAdapter<"vercel">; /** * SDK-free manifest describing Vercel deployment capabilities and required * environment variables. */ interface VercelDeployProviderManifest { readonly provider: "vercel"; readonly displayName: string; readonly runtime: "sdk-free-contract"; readonly capabilities: readonly string[]; readonly environmentVariables: readonly string[]; } /** * Vercel deploy contract bundle with its manifest, wrapped adapter, and target * validator. */ interface VercelDeployContract { readonly provider: "vercel"; readonly manifest: VercelDeployProviderManifest; readonly adapter: VercelDeployAdapter; validateTarget(target: unknown): VercelDeploymentTarget; } /** * Provider manifest for SDK-free Vercel deployment adapters. */ declare const VERCEL_DEPLOY_PROVIDER: VercelDeployProviderManifest; /** * Checks whether a deployment target belongs to the Vercel provider. */ declare function isVercelDeploymentTarget(target: unknown): target is VercelDeploymentTarget; /** * Validates and narrows a deployment target for the Vercel provider slice. */ declare function validateVercelDeploymentTarget(target: unknown): VercelDeploymentTarget; /** * Wraps a generic deployment adapter with Vercel target and result guards. */ declare function createVercelDeployAdapter(adapter: DeployAdapter): VercelDeployAdapter; /** * Creates a Vercel deploy contract bundle from a provider-neutral adapter. */ declare function createVercelDeployContract(adapter: DeployAdapter): VercelDeployContract; export { VERCEL_DEPLOY_PROVIDER, type VercelDeployAdapter, type VercelDeployContract, type VercelDeployProviderManifest, type VercelDeploymentTarget, createVercelDeployAdapter, createVercelDeployContract, isVercelDeploymentTarget, validateVercelDeploymentTarget };