/** * @since 2.0.0 */ import * as Equal from "./Equal.js"; import { type Inspectable } from "./Inspectable.js"; import * as Option from "./Option.js"; import type { Order } from "./Order.js"; import type { Pipeable } from "./Pipeable.js"; import type * as Types from "./Types.js"; declare const TypeId: unique symbol; /** * @since 2.0.0 * @category symbol */ export type TypeId = typeof TypeId; /** * @since 2.0.0 * @category models */ export interface SortedMap extends Iterable<[K, V]>, Equal.Equal, Pipeable, Inspectable { readonly [TypeId]: { readonly _K: Types.Invariant; readonly _V: Types.Covariant; }; } /** * @since 2.0.0 * @category refinements */ export declare const isSortedMap: { /** * @since 2.0.0 * @category refinements */ (u: Iterable): u is SortedMap; /** * @since 2.0.0 * @category refinements */ (u: unknown): u is SortedMap; }; /** * @since 2.0.0 * @category constructors */ export declare const empty: (ord: Order) => SortedMap; /** * Creates a new `SortedMap` from an iterable collection of key/value pairs. * * @since 2.0.0 * @category constructors */ export declare const fromIterable: { /** * Creates a new `SortedMap` from an iterable collection of key/value pairs. * * @since 2.0.0 * @category constructors */ (ord: Order): (iterable: Iterable) => SortedMap; /** * Creates a new `SortedMap` from an iterable collection of key/value pairs. * * @since 2.0.0 * @category constructors */ (iterable: Iterable, ord: Order): SortedMap; }; /** * @since 2.0.0 * @category constructors */ export declare const make: (ord: Order) => >(...entries: Entries) => SortedMap; /** * @since 2.0.0 * @category predicates */ export declare const isEmpty: (self: SortedMap) => boolean; /** * @since 2.0.0 * @category predicates */ export declare const isNonEmpty: (self: SortedMap) => boolean; /** * @since 2.0.0 * @category elements */ export declare const get: { /** * @since 2.0.0 * @category elements */ (key: K): (self: SortedMap) => Option.Option; /** * @since 2.0.0 * @category elements */ (self: SortedMap, key: K): Option.Option; }; /** * Gets the `Order` that the `SortedMap` is using. * * @since 2.0.0 * @category getters */ export declare const getOrder: (self: SortedMap) => Order; /** * @since 2.0.0 * @category elements */ export declare const has: { /** * @since 2.0.0 * @category elements */ (key: K): (self: SortedMap) => boolean; /** * @since 2.0.0 * @category elements */ (self: SortedMap, key: K): boolean; }; /** * @since 2.0.0 * @category elements */ export declare const headOption: (self: SortedMap) => Option.Option<[K, V]>; /** * @since 2.0.0 * @category mapping */ export declare const map: { /** * @since 2.0.0 * @category mapping */ (f: (a: A, k: K) => B): (self: SortedMap) => SortedMap; /** * @since 2.0.0 * @category mapping */ (self: SortedMap, f: (a: A, k: K) => B): SortedMap; }; /** * @since 2.0.0 * @category folding */ export declare const reduce: { /** * @since 2.0.0 * @category folding */ (zero: B, f: (acc: B, value: A, key: K) => B): (self: SortedMap) => B; /** * @since 2.0.0 * @category folding */ (self: SortedMap, zero: B, f: (acc: B, value: A, key: K) => B): B; }; /** * @since 2.0.0 * @category elements */ export declare const remove: { /** * @since 2.0.0 * @category elements */ (key: K): (self: SortedMap) => SortedMap; /** * @since 2.0.0 * @category elements */ (self: SortedMap, key: K): SortedMap; }; /** * @since 2.0.0 * @category elements */ export declare const set: { /** * @since 2.0.0 * @category elements */ (key: K, value: V): (self: SortedMap) => SortedMap; /** * @since 2.0.0 * @category elements */ (self: SortedMap, key: K, value: V): SortedMap; }; /** * @since 2.0.0 * @category getters */ export declare const size: (self: SortedMap) => number; /** * @since 2.0.0 * @category getters */ export declare const keys: (self: SortedMap) => IterableIterator; /** * @since 2.0.0 * @category getters */ export declare const values: (self: SortedMap) => IterableIterator; /** * @since 2.0.0 * @category getters */ export declare const entries: (self: SortedMap) => IterableIterator<[K, V]>; /** * @since 3.1.0 * @category elements */ export declare const lastOption: (self: SortedMap) => Option.Option<[K, V]>; /** * @since 3.1.0 * @category filtering */ export declare const partition: { /** * @since 3.1.0 * @category filtering */ (predicate: (a: Types.NoInfer) => boolean): (self: SortedMap) => [excluded: SortedMap, satisfying: SortedMap]; /** * @since 3.1.0 * @category filtering */ (self: SortedMap, predicate: (a: K) => boolean): [excluded: SortedMap, satisfying: SortedMap]; }; export {}; //# sourceMappingURL=SortedMap.d.ts.map