Hi there! Are you looking for the official Deno documentation? Try docs.deno.com for all your Deno learning needs.

OptionalKeys

OptionalKeys

@example
type Props = { req: number; reqUndef: number | undefined; opt?: string; optUndef?: number | undefined; };

  // Expect: "opt" | "optUndef"
  type Keys = OptionalKeys<Props>;
type OptionalKeys<T> = [K in keyof T]-?: {} extends Pick<T, K> ? K : never[keyof T];

§Type Parameters

§Type

§
[K in keyof T]-?: {} extends Pick<T, K> ? K : never[keyof T]
[src]