GetSchema<any> → FluentSchema<any>
GetSchema<unknown> → FluentSchema<any>
GetSchema<void> → FluentSchema<any>
GetSchema<never> → never
GetSchema<string> → FluentSchema<string, StringSchemaRules>
GetSchema<'hello'> → FluentSchema<string, StringSchemaRules, [...(keyof StringSchemaRules)[]]>
GetSchema<number> → FluentSchema<number, NumberSchemaRules>
GetSchema<bigint> → FluentSchema<bigint, NumberSchemaRules>
GetSchema<boolean> → FluentSchema<boolean>
GetSchema<null> → FluentSchema<null>
GetSchema<undefined> → FluentSchema<undefined>
GetSchema<symbol> → FluentSchema<symbol>
GetSchema<string[]> → FluentSchema<string[], ArraySchemaRules>
GetSchema<readonly string[]> → FluentSchema<readonly string[], ArraySchemaRules>
GetSchema<[string, number]> → FluentSchema<[string, number]>
GetSchema<Record<string, number>> → FluentSchema<Record<string, number>, RecordSchemaRules>
GetSchema<Record<number, string>> → FluentSchema<Record<number, string>, RecordSchemaRules>
GetSchema<Record<symbol, boolean>> → FluentSchema<Record<symbol, boolean>, RecordSchemaRules>
GetSchema<{ foo: string }> → FluentSchema<Sanitize<{ foo: string }>>
GetSchema<{ foo?: string }> → FluentSchema<Sanitize<{ foo?: string }>>
GetSchema<string | number> → FluentSchema<string | number>
Maps a TypeScript type T to the FluentSchema result type you'd get from calling the corresponding schema builder function.