#!/usr/bin/env node import { type OutputFormat } from "../../../toolcraft-design/dist/index.js"; import { type Diagnostic } from "../diagnostics.js"; import { type GeneratedFile } from "../generate.js"; interface GenerateCliFileSystem { lstat(targetPath: string): Promise<{ isDirectory(): boolean; isSymbolicLink(): boolean; }>; mkdir(directoryPath: string, options?: { recursive?: boolean; }): Promise; readFile(filePath: string, encoding: BufferEncoding): Promise; readdir(directoryPath: string): Promise; rename(oldPath: string, newPath: string): Promise; rm(targetPath: string, options?: { force?: boolean; }): Promise; realpath(targetPath: string): Promise; unlink(targetPath: string): Promise; writeFile(filePath: string, contents: string, options: BufferEncoding | { encoding?: BufferEncoding; flag?: string; }): Promise; } interface GenerateCliWriter { write(chunk: string | Uint8Array): boolean; } interface GenerateCliServices { cwd: string; fetch: typeof globalThis.fetch; fs: GenerateCliFileSystem; stderr: GenerateCliWriter; stdout: GenerateCliWriter; } interface GenerateCliOptions { check: boolean; diff: boolean; input: string; inspect: boolean; lockPath: string; outputFormat: OutputFormat; outputDir: string; } interface SyncGeneratedClientResult { deletedFileCount: number; deletedFiles: string[]; diagnostics: Diagnostic[]; drifted: boolean; specSha: string; updatedFiles: UpdatedGeneratedFile[]; updatedFileCount: number; } interface UpdatedGeneratedFile extends GeneratedFile { previousContents?: string; } export declare function runGenerateCli(argv?: string[], services?: GenerateCliServices): Promise; export declare function syncGeneratedClient(options: GenerateCliOptions, services: Pick): Promise; export {};