import { Dictionary } from 'type-core'; type Assert = D extends true ? Exclude extends Array ? Array> : Exclude extends Dictionary ? { [P in keyof T]: Exclude; } : Exclude : Exclude; declare namespace Assert { interface Options { name?: string; message?: string; deep?: D; } } declare function assert(data: T, options?: Assert.Options): Assert; export { Assert, assert };