import { type Platform } from './validation.js'; export interface Choice { name: string; message: string; initial?: string; validate?: (value: string) => boolean | string | Promise; /** * Whether the user is allowed to skip field entry and use the initial value. * * Defaults to `false`. */ allowInitial?: boolean; } export type BaseFields = Record<(typeof BASE_CHOICES)[number]['name'], string> & { platformName: Platform; }; declare const BASE_CHOICES: readonly [{ readonly name: "ownerName"; readonly message: "Owner"; readonly initial: "SEEK-Jobs/my-team"; readonly validate: (value: unknown) => true | "Required" | "Must contain a valid GitHub org name" | "Must contain a valid GitHub team name"; }, { readonly name: "repoName"; readonly message: "Repo"; readonly initial: "my-repo"; readonly validate: (value: unknown) => Promise; }, { readonly name: "platformName"; readonly message: "Platform"; readonly initial: "arm64"; readonly allowInitial: true; readonly validate: (value: unknown) => string | true; }, { readonly name: "defaultBranch"; readonly message: "Default Branch"; readonly initial: "main"; readonly allowInitial: true; readonly validate: (value: unknown) => true | "Required"; }]; export declare const BASE_PROMPT_PROPS: { choices: readonly [{ readonly name: "ownerName"; readonly message: "Owner"; readonly initial: "SEEK-Jobs/my-team"; readonly validate: (value: unknown) => true | "Required" | "Must contain a valid GitHub org name" | "Must contain a valid GitHub team name"; }, { readonly name: "repoName"; readonly message: "Repo"; readonly initial: "my-repo"; readonly validate: (value: unknown) => Promise; }, { readonly name: "platformName"; readonly message: "Platform"; readonly initial: "arm64"; readonly allowInitial: true; readonly validate: (value: unknown) => string | true; }, { readonly name: "defaultBranch"; readonly message: "Default Branch"; readonly initial: "main"; readonly allowInitial: true; readonly validate: (value: unknown) => true | "Required"; }]; message: string; name: string; }; export declare const shouldContinue: () => Promise; export declare const getGitPath: () => Promise; export declare const getTemplateName: () => Promise<"express-rest-api" | "greeter" | "koa-rest-api" | "lambda-sqs-worker-cdk" | "oss-npm-package" | "private-npm-package" | "github →" | "seek →" | "local →">; export declare const getLocalTemplatePath: () => Promise; export declare const getPrivateTemplateName: () => Promise; export {};