import { multiselect } from '@clack/prompts'; import type { Readable } from 'node:stream'; import { text } from '@clack/prompts'; import type { Writable } from 'node:stream'; export declare interface CliOptions { dir?: string; features?: LibraryFeature[]; platforms?: LibraryPlatform[]; packageName?: string; androidPackage?: string; moduleName?: string; elementName?: string; serviceName?: string; help: boolean; } export declare interface CliPrompts { text: typeof text; multiselect: typeof multiselect; } export declare interface CliRuntime { input: Readable & { isTTY?: boolean; }; output: Writable & { isTTY?: boolean; }; info: (message: string) => void; error: (message: string) => void; prompts?: CliPrompts; } export declare function isCliEntrypoint(entrypoint?: string | undefined, moduleUrl?: string): boolean; declare type LibraryFeature = 'native-module' | 'napi-native-module' | 'element' | 'service'; declare type LibraryPlatform = 'android' | 'ios' | 'harmony' | 'lynxtron'; /** * Runs the scaffold command from parsed and interactive CLI options. */ export declare function main(argv?: string[], runtime?: CliRuntime): Promise; /** * Parses command-line arguments for the library scaffold CLI. */ export declare function parseArgs(argv: string[]): CliOptions; /** * Reports CLI failures using the same formatting as the executable entry point. */ export declare function reportCliError(error: unknown, runtime?: CliRuntime): void; export { }