rx-nostr
Version:
A library based on RxJS, which allows Nostr applications to easily communicate with relays.
13 lines • 625 B
TypeScript
import { OptionalPart, RequiredPart } from './types.js';
type FilledConfig<C, D> = RequiredPart<C> & {
[K in keyof OptionalPart<C>]: K extends keyof D ? NonNullable<C[K]> : C[K];
};
export declare const config: <C>() => {
default: <const D extends Partial<OptionalPart<C>>>(factory: () => D) => {
set(config: C): void;
get<const K extends keyof FilledConfig<C, D>>(key: K): FilledConfig<C, D>[K];
};
};
export declare const fill: <C, const D extends Partial<OptionalPart<C>> = Partial<OptionalPart<C>>>(config: C, defaults: D) => FilledConfig<C, D>;
export {};
//# sourceMappingURL=config.d.ts.map