FlagFactory
Factory that creates FlagBuilder instances seeded with the correct FlagKind and initial type-level config.
- Import:
@kjanat/dreamcli - Export kind: interface
- Declared in:
src/core/schema/flag.ts - Source link:
src/core/schema/flag.ts:1049
Signatures
ts
interface FlagFactory {}Members
Methods
array
ts
array<E extends FlagConfig & { elementEligible: true; }>(element: FlagBuilder<E>): FlagBuilder<{ elementEligible: false; flagKind: "array"; optionalFallback: "empty-array"; presence: "optional"; valueType: E["valueType"][]; }>;boolean
ts
boolean(): FlagBuilder<{ elementEligible: true; flagKind: "boolean"; optionalFallback: "undefined"; presence: "defaulted"; valueType: boolean; }>;bytes
ts
bytes(): FlagBuilder<{ elementEligible: true; flagKind: "custom"; optionalFallback: "undefined"; presence: "optional"; valueType: number; }>;count
ts
count(): FlagBuilder<{ elementEligible: false; flagKind: "count"; optionalFallback: "undefined"; presence: "defaulted"; valueType: number; }>;custom
ts
custom<S extends StandardSchemaV1<unknown, unknown>>(schema: S): FlagBuilder<{ elementEligible: true; flagKind: "custom"; optionalFallback: "undefined"; presence: "optional"; valueType: InferStandardOutput<S>; }>;date
ts
date(options?: DateFlagOptions): FlagBuilder<{ elementEligible: true; flagKind: "custom"; optionalFallback: "undefined"; presence: "optional"; valueType: Date; }>;duration
ts
duration(): FlagBuilder<{ elementEligible: true; flagKind: "custom"; optionalFallback: "undefined"; presence: "optional"; valueType: number; }>;enum
ts
enum<T extends readonly [string, string]>(values: T): FlagBuilder<{ elementEligible: true; flagKind: "enum"; optionalFallback: "undefined"; presence: "optional"; valueType: T[number]; }>;keyValue
ts
keyValue(): FlagBuilder<{ elementEligible: false; flagKind: "keyValue"; optionalFallback: "empty-object"; presence: "optional"; valueType: Record<string, string>; }>;number
ts
number(constraints?: NumberConstraints): FlagBuilder<{ elementEligible: true; flagKind: "number"; optionalFallback: "undefined"; presence: "optional"; valueType: number; }>;path
ts
path(options?: PathFlagOptions): FlagBuilder<{ elementEligible: false; flagKind: "string"; optionalFallback: "undefined"; presence: "optional"; valueType: string; }>;string
ts
string(constraints?: StringConstraints): FlagBuilder<{ elementEligible: true; flagKind: "string"; optionalFallback: "undefined"; presence: "optional"; valueType: string; }>;url
ts
url(options?: UrlFlagOptions): FlagBuilder<{ elementEligible: true; flagKind: "custom"; optionalFallback: "undefined"; presence: "optional"; valueType: URL; }>;