/** * Wexts Vercel Build Output API builder. * * Produces the `.vercel/output` tree (Build Output API v3) that Vercel * uses for deployment. This module is invoked by `wexts vercel-build`. * * Layout produced: * .vercel/output/ * config.json – { version: 3 } * static/ – public / static assets copied here * functions/ * index.func/ * index.js – serverless entry point * package.json – { type: "module" } or cjs * .vc-config.json – Vercel function config * ...copied runtime files */ interface VercelBuildOptions { /** Project root (cwd). Defaults to process.cwd(). */ rootDir?: string; /** Path to NestJS/API project for codegen. */ apiProjectPath?: string; /** Output directory for generated RPC client. */ rpcOutputPath?: string; /** Path to wexts.runtime.js config. */ runtimeConfigPath?: string; /** Node.js runtime version for the Vercel function. */ nodeVersion?: string; /** Max duration in seconds for the serverless function. */ maxDuration?: number; /** Memory size in MB for the serverless function. */ memory?: number; /** Regions to deploy to. */ regions?: string[]; /** Skip the RPC codegen step. */ skipCodegen?: boolean; /** Skip the Next.js / project build step. */ skipBuild?: boolean; } interface VercelBuildResult { outputDir: string; configPath: string; functionDir: string; staticDir: string; errors: string[]; warnings: string[]; } /** * Build the `.vercel/output` directory from a Wexts project. */ declare function buildVercelOutput(options?: VercelBuildOptions): Promise; interface ValidationResult { errors: string[]; warnings: string[]; } declare function validateOutput(outputDir: string): ValidationResult; export { type ValidationResult, type VercelBuildOptions, type VercelBuildResult, buildVercelOutput, validateOutput };