import type { AttributeNamesPolicy } from './attribute-names'; import type { AttributesPolicy } from './attributes'; import type { BuiltInPolicyType } from './constants'; import type { DatePolicy } from './date'; import type { CompositePolicy } from './composite'; import type { IdentityPolicy } from './identity'; import type { PermissionBindingPolicy } from './permission-binding'; import type { RealmMatchPolicy } from './realm-match'; import type { TimePolicy } from './time'; type BuiltInPolicyTypeMapRaw = Record> = { [BuiltInPolicyType.ATTRIBUTES]: AttributesPolicy; [BuiltInPolicyType.ATTRIBUTE_NAMES]: AttributeNamesPolicy; [BuiltInPolicyType.DATE]: DatePolicy; [BuiltInPolicyType.COMPOSITE]: CompositePolicy; [BuiltInPolicyType.TIME]: TimePolicy; [BuiltInPolicyType.IDENTITY]: IdentityPolicy; [BuiltInPolicyType.PERMISSION_BINDING]: PermissionBindingPolicy; [BuiltInPolicyType.REALM_MATCH]: RealmMatchPolicy; }; export type BuiltInPolicyTypeMap = Record> = { [K in keyof BuiltInPolicyTypeMapRaw as `${K}`]: BuiltInPolicyTypeMapRaw[K]; }; export type BuiltInPolicies = Record> = { [K in keyof BuiltInPolicyTypeMap]: BuiltInPolicyTypeMap[K] & { type: K; }; }[keyof BuiltInPolicyTypeMap]; export {}; //# sourceMappingURL=types.d.ts.map