UNPKG

@sprucelabs/schema

Version:

Static and dynamic binding plus runtime validation and transformation to ensure your app is sound. 🤓

8 lines (7 loc) • 402 B
import { FieldName } from '../fields/field.static.types'; import { SchemaFieldsByName } from '../schemas.static.types'; type PrivateFieldNames<F extends SchemaFieldsByName> = { [K in FieldName<F>]: F[K]['isPrivate'] extends true ? K : never; }[FieldName<F>]; export default function dropPrivateFields<F extends SchemaFieldsByName, D extends PrivateFieldNames<F>>(fields: F): Omit<F, D>; export {};