<const F extends FieldsInput>(fields: F): ConfigBag<F>
<Bag extends FieldRecord>(all: AllConfig<Bag>): BagSource src/DynamicConfig.ts:3885 lines
export function function make<const F extends FieldsInput>(fields: F): ConfigBag<F> (+1 overload)make<const function (type parameter) F in make<const F extends FieldsInput>(fields: F): ConfigBag<F>F extends type FieldsInput = {
readonly [key: string]:
| Config.Config<unknown>
| ConfigField<unknown>
}
FieldsInput>(fields: const F extends FieldsInputfields: function (type parameter) F in make<const F extends FieldsInput>(fields: F): ConfigBag<F>F): type ConfigBag<F extends FieldsInput> = {
readonly [K in keyof F]: FieldOf<F[K]>
}
A bag of
ConfigField
s produced by
make
/
extend
.
ConfigBag<function (type parameter) F in make<const F extends FieldsInput>(fields: F): ConfigBag<F>F>;
export function function make<Bag extends FieldRecord>(all: AllConfig<Bag>): Bag (+1 overload)make<function (type parameter) Bag in make<Bag extends FieldRecord>(all: AllConfig<Bag>): BagBag extends type FieldRecord = {
[x: string]: ConfigField<unknown>
}
FieldRecord>(all: AllConfig<Bag>(parameter) all: {
pipe: { <A>(this: A): A; <A, B = never>(this: A, ab: (_: A) => B): B; <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C; <A, B = never, C = never, D = never>(this: A, ab: (_: A) => B, bc: (_: B) => C, cd: (_: C) => D): D; <…;
toString: () => string;
toJSON: () => unknown;
}
all: interface AllConfig<Bag extends FieldRecord>The combined, yieldable-as-a-whole form of a config (like Config.all):
yield* allCfg resolves every field into one object. No per-field accessors —
make
has those; pass either into the other to convert.
AllConfig<function (type parameter) Bag in make<Bag extends FieldRecord>(all: AllConfig<Bag>): BagBag>): function (type parameter) Bag in make<Bag extends FieldRecord>(all: AllConfig<Bag>): BagBag;
export function function make<const F extends FieldsInput>(fields: F): ConfigBag<F> (+1 overload)make(input: FieldsInput | AllConfig<FieldRecord>input: type FieldsInput = {
readonly [key: string]:
| Config.Config<unknown>
| ConfigField<unknown>
}
FieldsInput | interface AllConfig<Bag extends FieldRecord>The combined, yieldable-as-a-whole form of a config (like Config.all):
yield* allCfg resolves every field into one object. No per-field accessors —
make
has those; pass either into the other to convert.
AllConfig<type FieldRecord = {
[x: string]: ConfigField<unknown>
}
FieldRecord>): type FieldRecord = {
[x: string]: ConfigField<unknown>
}
FieldRecord {
return const toFieldRecord: (
input: FieldsInput | AllConfig<FieldRecord>
) => FieldRecord
toFieldRecord(input: FieldsInput | AllConfig<FieldRecord>input);
}
Referenced by 2 symbols