import type { Class, PartialSome, Type } from 'ts-gems'; import type { DataType } from './data-type.js'; /** * Create a new MappedType that marks given or all fields as optional * @param baseType * @param options */ export declare function PartialType(baseType: string | Type, options?: DataType.Options): Type; /** * Create a new MappedType that marks given fields as optional * @param baseType * @param keys * @param options */ export declare function PartialType(baseType: Class, keys: readonly K[], options?: DataType.Options): Class> & Omit, 'prototype' | 'constructor'>; /** * Create a new MappedType that marks all fields as optional * @param baseType * @param options */ export declare function PartialType(baseType: Class, options?: DataType.Options): Class> & Omit, 'prototype' | 'constructor'>; /** * Create a new MappedType that marks given or all fields as optional * @param baseType * @param keys * @param options */ export declare function PartialType(baseType: string | Type, keys: string[], options?: DataType.Options): Type;