import { CCliArgGroup, CCliArgGroupOptions } from '../c-cli-arg-group'; import { CCliConditionalValue } from '../c-cli-conditional-value'; /** A {@link CCliFlagArgGroup} always returns a value `true` (or `undefined`) */ declare type CCliFlagArgGroupValue = true; /** A {@link CCliFlagArgGroup} is always optional */ declare type CCliFlagArgGroupOptional = true; /** Options for {@link CCliFlagArgGroup} */ export declare type CCliFlagArgGroupOptions = Pick, 'description' | 'hidden'>; /** A `boolean`-valued command-line argument group. This argument group type * only makes sense as a named argument. For example if a CLI has a named flag * argument group "foo", here's how that CLI behaves: * ```plaintext * $ cli // named value "foo" is `undefined` * $ cli --foo // named value "foo" is `true` * $ cli --foo bar // usage error * ``` */ export declare class CCliFlagArgGroup extends CCliArgGroup { parse(args: string[] | undefined): CCliConditionalValue; /** Factory for boolean-valued {@link CCliFlagArgGroup}s */ static create(options?: CCliFlagArgGroupOptions): CCliFlagArgGroup; } export {}; //# sourceMappingURL=c-cli-flag-arg-group.d.ts.map