import { ValueWrapper } from './value-wrapper'; export declare class DefaultValueWrapper implements ValueWrapper { private _value; private _exists; private _defaultValue; protected constructor(value: T, exists?: boolean, defaultValue?: T); protected set value(newValue: T); protected get value(): T; protected get defaultValue(): T; isExists(): boolean; ensureExists(message?: string): this; ensureGreaterThan(other: T, message?: string): this; ensureGreaterThanOrEqual(other: T, message?: string): this; ensureLowerThan(other: T, message?: string): this; ensureLowerThanOrEqual(other: T, message?: string): this; ensureEqualTo(other: T, message?: string): this; ensureNotEqualTo(other: T, message?: string): this; ensureNotNull(message?: string): this; ensureIn(list: T[], message?: string): this; ensureNotIn(list: T[], message?: string): this; ensureFit(predicate: (value: T) => boolean, message?: string): this; eitherExists(or: T): this; eitherGreaterThan(other: T, or?: T): this; eitherGreaterThanOrEqual(other: T, or?: T): this; eitherLowerThan(other: T, or?: T): this; eitherLowerThanOrEqual(other: T, or?: T): this; eitherEqualTo(other: T, or: T): this; eitherNotEqualTo(other: T, or: T): this; eitherNotNull(or: T): this; eitherIn(list: T[], or: T): this; eitherNotIn(list: T[], or: T): this; eitherFit(predicate: (value: T) => boolean, or: T): this; get(): T; getOrDefault(defaultValue?: T): T; getOrThrow(message?: string): T; }