@sprucelabs/schema
Version:
Static and dynamic binding plus runtime validation and transformation to ensure your app is sound. 🤓
10 lines (9 loc) • 407 B
TypeScript
import { FieldName } from '../fields/field.static.types';
import { SchemaFieldsByName } from '../schemas.static.types';
type MakeFieldsOptional<F extends SchemaFieldsByName> = {
[K in keyof F]: {
isRequired: false;
} & Omit<F[K], 'isRequired'>;
};
export default function makeFieldsOptional<F extends SchemaFieldsByName, D extends FieldName<F>>(fields: F): MakeFieldsOptional<F>;
export {};