export declare type RemoveEmptySchemaPropertyTarget = 'emptyString' | 'emptyArray' | 'emptyObject' | 'nullOrUndefined'; export interface RemoveEmptySchemaPropertyOptions { ignore?: Array | RemoveEmptySchemaPropertyTarget; } /** * Removes all "empty" properties from the given schema object and returns the "compressed" value. The "empty" condition * is given for any `null`, `undefined`, empty string, array or object value, given it is not ignored by the * {@link RemoveEmptySchemaPropertyOptions.ignore} option * * @remarks Please note that this utility function is designed to support non-instantiated objects only, meaning that * dynamic references like class instances and their functions won't be preserved during the removal process * * @param objOrArray The schema object value that should be "compressed" * @param [options] Optional configuration interface */ export declare function removeEmptySchemaProperties(objOrArray: T, options?: RemoveEmptySchemaPropertyOptions): Partial;