import type { And } from "./core"; import type { Extends } from "ts-toolbelt/out/Any/Extends"; import type { FilterKeys as Filter } from "ts-toolbelt/out/Object/FilterKeys"; import type { If } from "ts-toolbelt/out/Any/If"; import type { Match } from "ts-toolbelt/out/Any/_Internal"; import type { OptionalKeys as Optional } from "ts-toolbelt/out/Object/OptionalKeys"; import type { PickGroupsOption } from "./object.keys.internal"; import type { ReadonlyKeys as Readonly } from "ts-toolbelt/out/Object/ReadonlyKeys"; import type { RequiredKeys as Required } from "ts-toolbelt/out/Object/RequiredKeys"; import type { WritableKeys as Writable } from "ts-toolbelt/out/Object/WritableKeys"; export type Defined = Filter; export type Pick = Exclude>; export type PickGroups = And, Defined, keyof T>, If, Optional, keyof T>, If, Readonly, keyof T>, If, Required, keyof T>, If, Undefined, keyof T>, If, Writable, keyof T>>; export type ReadonlyDefined = PickGroups; export type ReadonlyUndefined = PickGroups; export type Undefined = Pick; export type WritableDefined = PickGroups; export type WritableUndefined = PickGroups; export type { FilterKeys as Filter } from "ts-toolbelt/out/Object/FilterKeys"; export type { OptionalKeys as Optional } from "ts-toolbelt/out/Object/OptionalKeys"; export type { ReadonlyKeys as Readonly } from "ts-toolbelt/out/Object/ReadonlyKeys"; export type { RequiredKeys as Required } from "ts-toolbelt/out/Object/RequiredKeys"; export type { WritableKeys as Writable } from "ts-toolbelt/out/Object/WritableKeys"; //# sourceMappingURL=object.keys.d.ts.map