import { Get, Predicate } from './Get'; import { Constructor } from './Constructor'; export declare class Parser { protected value: T; protected valid: boolean; if: { equals: (pred?: Predicate) => this; empty: (pred?: Get) => this; defined: (pred?: Get) => this; valid: (pred?: Get) => this; in: (...items: T[]) => this; is: { object: (pred?: Get) => this; string: (pred?: Get) => this; instance: (c: Constructor, pred?: Get) => this; }; not: { empty: (pred?: Get) => this; defined: (pred?: Get) => this; valid: (pred?: Get) => this; isObject: (pred?: Get) => this; in: (...items: T[]) => this; is: { object: (pred?: Get) => this; string: (pred?: Get) => this; instance: (c: Constructor, pred?: Get) => this; }; }; }; constructor(value: T, valid?: boolean); protected evaluate(meta: Get, pred?: Get): this; protected evaluateNot(meta: Get, pred?: Get): this; }