import * as HashMap from "./HashMap.js"; import type * as TestAnnotation from "./TestAnnotation.js"; /** * @since 2.0.0 */ export declare const TestAnnotationMapTypeId: unique symbol; /** * @since 2.0.0 */ export type TestAnnotationMapTypeId = typeof TestAnnotationMapTypeId; /** * An annotation map keeps track of annotations of different types. * * @since 2.0.0 */ export interface TestAnnotationMap { readonly [TestAnnotationMapTypeId]: TestAnnotationMapTypeId; } /** * @since 2.0.0 */ export declare const isTestAnnotationMap: (u: unknown) => u is TestAnnotationMap; /** * @since 2.0.0 */ export declare const empty: (_: void) => TestAnnotationMap; /** * @since 2.0.0 */ export declare const make: (map: HashMap.HashMap, any>) => TestAnnotationMap; /** * @since 2.0.0 */ export declare const overwrite: ((key: TestAnnotation.TestAnnotation, value: A) => (self: TestAnnotationMap) => TestAnnotationMap) & ((self: TestAnnotationMap, key: TestAnnotation.TestAnnotation, value: A) => TestAnnotationMap); /** * @since 2.0.0 */ export declare const update: ((key: TestAnnotation.TestAnnotation, f: (value: A) => A) => (self: TestAnnotationMap) => TestAnnotationMap) & ((self: TestAnnotationMap, key: TestAnnotation.TestAnnotation, f: (value: A) => A) => TestAnnotationMap); /** * Retrieves the annotation of the specified type, or its default value if * there is none. * * @since 2.0.0 */ export declare const get: ((key: TestAnnotation.TestAnnotation) => (self: TestAnnotationMap) => A) & ((self: TestAnnotationMap, key: TestAnnotation.TestAnnotation) => A); /** * Appends the specified annotation to the annotation map. * * @since 2.0.0 */ export declare const annotate: ((key: TestAnnotation.TestAnnotation, value: A) => (self: TestAnnotationMap) => TestAnnotationMap) & ((self: TestAnnotationMap, key: TestAnnotation.TestAnnotation, value: A) => TestAnnotationMap); /** * @since 2.0.0 */ export declare const combine: ((that: TestAnnotationMap) => (self: TestAnnotationMap) => TestAnnotationMap) & ((self: TestAnnotationMap, that: TestAnnotationMap) => TestAnnotationMap); //# sourceMappingURL=TestAnnotationMap.d.ts.map