UNPKG

react-runtime-config

Version:

Provide a typesafe runtime configuration inside a react app

15 lines 1.31 kB
import { ConfigOptions, Config, ResolvedSchema, isStringEnumConfig, isNumberConfig, isCustomConfig, isBooleanConfig, isStringConfig, StringConfig, StringEnumConfig, NumberConfig, BooleanConfig, CustomConfig, AdminField, AdminFields, GenericAdminFields, NamespacedUseConfigReturnType } from "./types"; export { ConfigOptions, Config, StringConfig, StringEnumConfig, NumberConfig, BooleanConfig, CustomConfig, isStringEnumConfig, isNumberConfig, isCustomConfig, isBooleanConfig, isStringConfig, AdminField, AdminFields, GenericAdminFields, }; export declare function createConfig<TSchema extends Record<string, Config>, TNamespace extends string = "">(options: ConfigOptions<TSchema, TNamespace>): { useConfig: () => NamespacedUseConfigReturnType<TSchema, TNamespace>; useAdminConfig: () => { fields: (keyof TSchema extends keyof TSchema ? { [key in keyof TSchema]: AdminField<TSchema, key>; }[keyof TSchema] : never)[]; reset: () => void; namespace: string; }; getConfig: <K extends keyof TSchema>(path: K) => ResolvedSchema<TSchema>[K]; setConfig: <K_1 extends keyof TSchema>(path: K_1, value: ResolvedSchema<TSchema>[K_1]) => void; getAllConfig: () => ResolvedSchema<TSchema>; }; export default createConfig; //# sourceMappingURL=index.d.ts.map