import { Result } from '../base'; import { KeyValueEntry } from './common'; import { KeyValueConverters } from './keyValueConverters'; import { IReadOnlyResultMap } from './readonlyResultMap'; import { ResultMap } from './resultMap'; import { IReadOnlyResultMapValidator, ResultMapValidator } from './resultMapValidator'; /** * A read-only interface exposing non-mutating methods of a {@link Collections.ValidatingResultMap | ValidatingResultMap}. * @public */ export interface IReadOnlyValidatingResultMap extends IReadOnlyResultMap { /** * {@inheritdoc Collections.ValidatingResultMap.validating} */ readonly validating: IReadOnlyResultMapValidator; } /** * Parameters for constructing a {@link Collections.ResultMap | ResultMap}. * @public */ export interface IValidatingResultMapConstructorParams { entries?: Iterable>; converters: KeyValueConverters; } /** * A {@link Collections.ResultMap | ResultMap} with a {@link Collections.ResultMapValidator | validator} * property that enables validated use of the underlying map with weakly-typed keys and values. * @public */ export declare class ValidatingResultMap extends ResultMap implements IReadOnlyValidatingResultMap { /** * A {@link Collections.ResultMapValidator | ResultMapValidator} which validates keys and values * before inserting them into this collection. */ readonly validating: ResultMapValidator; /** * Constructs a new {@link Collections.ValidatingResultMap | ValidatingResultMap}. * @param params - Required parameters for constructing the map. */ constructor(params: IValidatingResultMapConstructorParams); /** * Creates a new {@link Collections.ValidatingResultMap | ValidatingResultMap} instance. * @param params - Required parameters for constructing the map. * @returns `Success` with the new map if successful, `Failure` otherwise. * @public */ static createValidatingResultMap(params: IValidatingResultMapConstructorParams): Result>; /** * Gets a read-only version of this map. */ toReadOnly(): IReadOnlyValidatingResultMap; } //# sourceMappingURL=validatingResultMap.d.ts.map