import { Brand, Result, Success } from '../base'; import { ConstraintOptions, ConversionErrorFormatter, Converter, DefaultingConverter } from './converter'; /** * Generic {@link Conversion.DefaultingConverter | DefaultingConverter}, which wraps another converter * to substitute a supplied default value for any errors returned by the inner converter. * @public */ export declare class GenericDefaultingConverter implements DefaultingConverter { private _converter; /** * {@inheritdoc Conversion.DefaultingConverter.defaultValue} */ defaultValue: TD; /** * {@inheritdoc Converter.isOptional} */ get isOptional(): boolean; /** * {@inheritdoc Converter.isOptional} */ get brand(): string | undefined; /** * Constructs a new {@link Conversion.GenericDefaultingConverter | generic defaulting converter}. * @param converter - inner {@link Converter | Converter} used for the base conversion. * @param defaultValue - default value to be supplied if the inner conversion fails. */ constructor(converter: Converter, defaultValue: TD); /** * {@inheritdoc Converter.convert} */ convert(from: unknown, ctx?: TC | undefined): Success; /** * {@inheritdoc Converter.convertOptional} */ convertOptional(from: unknown, context?: TC | undefined, onError?: ('failOnError' | 'ignoreErrors') | undefined): Result; /** * {@inheritdoc Converter.optional} */ optional(onError?: ('failOnError' | 'ignoreErrors') | undefined): Converter; /** * {@inheritdoc Converter.map} */ map(mapper: (from: T | TD) => Result): Converter; /** * {@inheritdoc Converter.mapConvert} */ mapConvert(mapConverter: Converter): Converter; /** * {@inheritdoc Converter.mapItems} */ mapItems(mapper: (from: unknown) => Result): Converter; /** * {@inheritdoc Converter.mapConvertItems} */ mapConvertItems(mapConverter: Converter): Converter; /** * {@inheritdoc Converter.withAction} */ withAction(action: (result: Result) => Result): Converter; /** * {@inheritdoc Converter.withTypeGuard} */ withTypeGuard(guard: (from: unknown) => from is TI, message?: string | undefined): Converter; /** * {@inheritdoc Converter.withItemTypeGuard} */ withItemTypeGuard(guard: (from: unknown) => from is TI, message?: string | undefined): Converter; /** * {@inheritdoc Converter.withConstraint} */ withConstraint(constraint: (val: T | TD) => boolean | Result, options?: ConstraintOptions | undefined): Converter; /** * {@inheritdoc Converter.withBrand} */ withBrand(brand: B): Converter, TC>; /** * {@inheritdoc Converter.withFormattedError} */ withFormattedError(formatter: ConversionErrorFormatter): Converter; /** * Returns a Converter which always succeeds with the supplied default value rather * than failing. * * Note that the supplied default value *overrides* the default value of this * {@link Conversion.DefaultingConverter | DefaultingConverter}. */ withDefault(dflt: TD2): DefaultingConverter; private _applyDefault; } //# sourceMappingURL=defaultingConverter.d.ts.map