import type { InputRecord } from './types'; import type { Compute } from '@principia/base/util/compute'; import type { _A, ExcludeMatchingProperties, UnionToIntersection } from '@principia/base/util/types'; export declare type NonRequiredInputKeys = keyof ExcludeMatchingProperties<{ [k in keyof T]: T[k]['config']['nullable'] extends true ? k : never; }, never>; export declare type RequiredInputKeys = Exclude>; export declare type TypeofInputRecord = Compute<{ [k in NonRequiredInputKeys]?: _A; } & { [k in RequiredInputKeys]: _A; }, 'flat'>; export declare type _Root = [A] extends [{ _Root: infer Root; }] ? Root : {}; export declare type __R = UnionToIntersection<{ [K in keyof Fs]: [Fs[K]] extends [{ _R: (_: infer R) => void; }] ? (unknown extends R ? never : R) : never; }[keyof Fs]>; export declare type __E = Compute<{ [K in keyof Fs]: [Fs[K]] extends [{ _E: () => infer E; }] ? E : never; }[keyof Fs], 'flat'>; export declare type __A = Compute<{ [K in keyof Fs]: _A; }, 'flat'>; //# sourceMappingURL=util.d.ts.map