import { type SchemaType } from "@pulsemcp/air-core"; export interface InitConfigOptions { /** Override the default air.json path (~/.air/air.json). */ path?: string; /** * When true, treat an existing `air.json` as pre-existing and leave it * untouched instead of throwing. Missing scaffold pieces (index files, * README) are still created. Use this to provide an upgrade path for * users who initialized before newer scaffold pieces existed. */ topUp?: boolean; } export interface ScaffoldedFile { /** Absolute path to the file that was created. */ path: string; /** What kind of file this is. Index files are keyed by their schema type. */ kind: "air" | "readme" | SchemaType; } export interface InitConfigResult { /** Absolute path to the created air.json. */ airJsonPath: string; /** Absolute path to the AIR config directory. */ airDir: string; /** All files created by this init, in creation order. */ scaffolded: ScaffoldedFile[]; } /** * Scaffold the six local artifact index files and the README in `airDir`. * * Idempotent: skips any file that already exists. Returns entries only for * files that were actually written, in creation order. Intended to be shared * between blank-mode `initConfig` and repo-mode `initFromRepo`, so that * local-composition indexes always exist on disk regardless of how `air.json` * was produced. */ export declare function scaffoldLocalFiles(airDir: string): ScaffoldedFile[]; /** * Initialize a new AIR configuration directory. * * Scaffolds a ready-to-edit workspace: `air.json` pre-wired to six local * index files (one per artifact type), each containing a `$schema` reference * so editors give autocomplete out of the box, plus a README orienting the * user to the layout. * * Existing index files and README are always left untouched. By default, * an existing `air.json` causes an error; pass `topUp: true` to instead * leave it in place and only scaffold any missing pieces. * * @throws Error if `air.json` exists and `topUp` is not set. */ export declare function initConfig(options?: InitConfigOptions): InitConfigResult; //# sourceMappingURL=init.d.ts.map