Type alias ExactOptionalize<Schema>

ExactOptionalize<Schema>: OmitBy<Schema, ExactOptionalTag> & Partial<ExcludeType<PickBy<Schema, ExactOptionalTag>, ExactOptionalTag>>

Make optional all properties that have the ExactOptionalTag type.

type Foo = { a: string | ExactOptionalTag; b: number};
type Bar = ExactOptionalize<Foo>;
// Bar = { a?: string; b: number}

Type Parameters

  • Schema extends object