declare type Checking<I, O> = (t: I) => O;
export declare class Optional<T> {
    private readonly data;
    private readonly empty;
    constructor(data: T | undefined | null, extra?: Checking<T, boolean>);
    get(): T;
    getOrElse(def: T): T;
    orUndefined(): T | undefined;
    isEmpty(): boolean;
    isNotEmpty(): boolean;
}
export {};
//# sourceMappingURL=Optional.d.ts.map