import * as Schema from "effect/Schema"; import type { FlagDoc, HelpDoc } from "effect/unstable/cli/HelpDoc"; export interface JsonFlagDoc { readonly name: string; readonly aliases: ReadonlyArray; readonly type: string; readonly required: boolean; readonly description?: string | undefined; } export interface JsonArgDoc { readonly name: string; readonly type: string; readonly required: boolean; readonly variadic: boolean; readonly description?: string | undefined; } export interface JsonSubcommandDoc { readonly name: string; readonly alias?: string | undefined; readonly shortDescription?: string | undefined; readonly description?: string | undefined; } export interface JsonSubcommandGroupDoc { readonly group?: string | undefined; readonly commands: ReadonlyArray; } export interface JsonExampleDoc { readonly command: string; readonly description?: string | undefined; } export interface JsonHelpDoc { readonly type: "help"; readonly description: string; readonly usage: string; readonly flags: ReadonlyArray; readonly globalFlags?: ReadonlyArray | undefined; readonly args?: ReadonlyArray | undefined; readonly subcommands?: ReadonlyArray | undefined; readonly examples?: ReadonlyArray | undefined; readonly learnMore?: string | undefined; } export declare const JsonFlagDocSchema: Schema.Struct<{ readonly name: Schema.String; readonly aliases: Schema.$Array; readonly type: Schema.String; readonly required: Schema.Boolean; readonly description: Schema.optional; }>; export declare const JsonArgDocSchema: Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.String; readonly required: Schema.Boolean; readonly variadic: Schema.Boolean; readonly description: Schema.optional; }>; export declare const JsonSubcommandDocSchema: Schema.Struct<{ readonly name: Schema.String; readonly alias: Schema.optional; readonly shortDescription: Schema.optional; readonly description: Schema.optional; }>; export declare const JsonSubcommandGroupDocSchema: Schema.Struct<{ readonly group: Schema.optional; readonly commands: Schema.$Array; readonly shortDescription: Schema.optional; readonly description: Schema.optional; }>>; }>; export declare const JsonExampleDocSchema: Schema.Struct<{ readonly command: Schema.String; readonly description: Schema.optional; }>; export declare const JsonHelpDocSchema: Schema.Struct<{ readonly type: Schema.Literal<"help">; readonly description: Schema.String; readonly usage: Schema.String; readonly flags: Schema.$Array; readonly type: Schema.String; readonly required: Schema.Boolean; readonly description: Schema.optional; }>>; readonly globalFlags: Schema.optional; readonly type: Schema.String; readonly required: Schema.Boolean; readonly description: Schema.optional; }>>>; readonly args: Schema.optional; }>>>; readonly subcommands: Schema.optional; readonly commands: Schema.$Array; readonly shortDescription: Schema.optional; readonly description: Schema.optional; }>>; }>>>; readonly examples: Schema.optional; }>>>; readonly learnMore: Schema.optional; }>; export declare const JsonVersionDocSchema: Schema.Struct<{ readonly type: Schema.Literal<"version">; readonly name: Schema.String; readonly version: Schema.String; }>; export type JsonVersionDoc = typeof JsonVersionDocSchema.Type; export declare const isSubcommandDoc: (doc: HelpDoc) => boolean; export declare const toJsonFlagDoc: (flag: FlagDoc) => JsonFlagDoc; export declare const toJsonHelpDoc: (doc: HelpDoc, options?: { readonly learnMore?: string | undefined; }) => JsonHelpDoc; //# sourceMappingURL=json-help-doc.d.ts.map