Skip to main content
Glama
ssv445

Lorem Ipsum MCP Server

by ssv445
HashMap.d.ts23.4 kB
/** * @since 2.0.0 */ import type { Equal } from "./Equal.js"; import type { HashSet } from "./HashSet.js"; import type { Inspectable } from "./Inspectable.js"; import type { Option } from "./Option.js"; import type { Pipeable } from "./Pipeable.js"; import type { NoInfer } 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 HashMap<out Key, out Value> extends Iterable<[Key, Value]>, Equal, Pipeable, Inspectable { readonly [TypeId]: TypeId; } /** * @since 2.0.0 */ export declare namespace HashMap { /** * @since 2.0.0 * @category models */ type UpdateFn<V> = (option: Option<V>) => Option<V>; /** * This type-level utility extracts the key type `K` from a `HashMap<K, V>` type. * * @example * ```ts * import { HashMap } from "effect" * * declare const hm: HashMap.HashMap<string, number> * * // $ExpectType string * type K = HashMap.HashMap.Key<typeof hm> * * ``` * @since 2.0.0 * @category type-level */ type Key<T extends HashMap<any, any>> = [T] extends [HashMap<infer _K, infer _V>] ? _K : never; /** * This type-level utility extracts the value type `V` from a `HashMap<K, V>` type. * * @example * ```ts * import { HashMap } from "effect" * * declare const hm: HashMap.HashMap<string, number> * * // $ExpectType number * type V = HashMap.HashMap.Value<typeof hm> * * ``` * @since 2.0.0 * @category type-level */ type Value<T extends HashMap<any, any>> = [T] extends [HashMap<infer _K, infer _V>] ? _V : never; /** * This type-level utility extracts the entry type `[K, V]` from a `HashMap<K, V>` type. * * @example * ```ts * import { HashMap } from "effect" * * declare const hm: HashMap.HashMap<string, number> * * // $ExpectType [string, number] * type V = HashMap.HashMap.Entry<typeof hm> * * ``` * @since 3.9.0 * @category type-level */ type Entry<T extends HashMap<any, any>> = [Key<T>, Value<T>]; } /** * @since 2.0.0 * @category refinements */ export declare const isHashMap: { /** * @since 2.0.0 * @category refinements */ <K, V>(u: Iterable<readonly [K, V]>): u is HashMap<K, V>; /** * @since 2.0.0 * @category refinements */ (u: unknown): u is HashMap<unknown, unknown>; }; /** * Creates a new `HashMap`. * * @since 2.0.0 * @category constructors */ export declare const empty: <K = never, V = never>() => HashMap<K, V>; /** * Constructs a new `HashMap` from an array of key/value pairs. * * @since 2.0.0 * @category constructors */ export declare const make: <Entries extends ReadonlyArray<readonly [any, any]>>(...entries: Entries) => HashMap<Entries[number] extends readonly [infer K, any] ? K : never, Entries[number] extends readonly [any, infer V] ? V : never>; /** * Creates a new `HashMap` from an iterable collection of key/value pairs. * * @since 2.0.0 * @category constructors */ export declare const fromIterable: <K, V>(entries: Iterable<readonly [K, V]>) => HashMap<K, V>; /** * Checks if the `HashMap` contains any entries. * * @since 2.0.0 * @category elements */ export declare const isEmpty: <K, V>(self: HashMap<K, V>) => boolean; /** * Safely lookup the value for the specified key in the `HashMap` using the * internal hashing function. * * @since 2.0.0 * @category elements */ export declare const get: { /** * Safely lookup the value for the specified key in the `HashMap` using the * internal hashing function. * * @since 2.0.0 * @category elements */ <K1 extends K, K>(key: K1): <V>(self: HashMap<K, V>) => Option<V>; /** * Safely lookup the value for the specified key in the `HashMap` using the * internal hashing function. * * @since 2.0.0 * @category elements */ <K1 extends K, K, V>(self: HashMap<K, V>, key: K1): Option<V>; }; /** * Lookup the value for the specified key in the `HashMap` using a custom hash. * * @since 2.0.0 * @category elements */ export declare const getHash: { /** * Lookup the value for the specified key in the `HashMap` using a custom hash. * * @since 2.0.0 * @category elements */ <K1 extends K, K>(key: K1, hash: number): <V>(self: HashMap<K, V>) => Option<V>; /** * Lookup the value for the specified key in the `HashMap` using a custom hash. * * @since 2.0.0 * @category elements */ <K1 extends K, K, V>(self: HashMap<K, V>, key: K1, hash: number): Option<V>; }; /** * Unsafely lookup the value for the specified key in the `HashMap` using the * internal hashing function. * * @since 2.0.0 * @category unsafe */ export declare const unsafeGet: { /** * Unsafely lookup the value for the specified key in the `HashMap` using the * internal hashing function. * * @since 2.0.0 * @category unsafe */ <K1 extends K, K>(key: K1): <V>(self: HashMap<K, V>) => V; /** * Unsafely lookup the value for the specified key in the `HashMap` using the * internal hashing function. * * @since 2.0.0 * @category unsafe */ <K1 extends K, K, V>(self: HashMap<K, V>, key: K1): V; }; /** * Checks if the specified key has an entry in the `HashMap`. * * @since 2.0.0 * @category elements */ export declare const has: { /** * Checks if the specified key has an entry in the `HashMap`. * * @since 2.0.0 * @category elements */ <K1 extends K, K>(key: K1): <K, V>(self: HashMap<K, V>) => boolean; /** * Checks if the specified key has an entry in the `HashMap`. * * @since 2.0.0 * @category elements */ <K1 extends K, K, V>(self: HashMap<K, V>, key: K1): boolean; }; /** * Checks if the specified key has an entry in the `HashMap` using a custom * hash. * * @since 2.0.0 * @category elements */ export declare const hasHash: { /** * Checks if the specified key has an entry in the `HashMap` using a custom * hash. * * @since 2.0.0 * @category elements */ <K1 extends K, K>(key: K1, hash: number): <V>(self: HashMap<K, V>) => boolean; /** * Checks if the specified key has an entry in the `HashMap` using a custom * hash. * * @since 2.0.0 * @category elements */ <K1 extends K, K, V>(self: HashMap<K, V>, key: K1, hash: number): boolean; }; /** * Checks if an element matching the given predicate exists in the given `HashMap`. * * @example * ```ts * import { HashMap } from "effect" * * const hm = HashMap.make([1, 'a']) * HashMap.hasBy(hm, (value, key) => value === 'a' && key === 1); // -> true * HashMap.hasBy(hm, (value) => value === 'b'); // -> false * * ``` * * @since 3.16.0 * @category elements */ export declare const hasBy: { /** * Checks if an element matching the given predicate exists in the given `HashMap`. * * @example * ```ts * import { HashMap } from "effect" * * const hm = HashMap.make([1, 'a']) * HashMap.hasBy(hm, (value, key) => value === 'a' && key === 1); // -> true * HashMap.hasBy(hm, (value) => value === 'b'); // -> false * * ``` * * @since 3.16.0 * @category elements */ <K, V>(predicate: (value: NoInfer<V>, key: NoInfer<K>) => boolean): (self: HashMap<K, V>) => boolean; /** * Checks if an element matching the given predicate exists in the given `HashMap`. * * @example * ```ts * import { HashMap } from "effect" * * const hm = HashMap.make([1, 'a']) * HashMap.hasBy(hm, (value, key) => value === 'a' && key === 1); // -> true * HashMap.hasBy(hm, (value) => value === 'b'); // -> false * * ``` * * @since 3.16.0 * @category elements */ <K, V>(self: HashMap<K, V>, predicate: (value: NoInfer<V>, key: NoInfer<K>) => boolean): boolean; }; /** * Sets the specified key to the specified value using the internal hashing * function. * * @since 2.0.0 */ export declare const set: { /** * Sets the specified key to the specified value using the internal hashing * function. * * @since 2.0.0 */ <K, V>(key: K, value: V): (self: HashMap<K, V>) => HashMap<K, V>; /** * Sets the specified key to the specified value using the internal hashing * function. * * @since 2.0.0 */ <K, V>(self: HashMap<K, V>, key: K, value: V): HashMap<K, V>; }; /** * Returns an `IterableIterator` of the keys within the `HashMap`. * * @since 2.0.0 * @category getters */ export declare const keys: <K, V>(self: HashMap<K, V>) => IterableIterator<K>; /** * Returns a `HashSet` of keys within the `HashMap`. * * @since 2.0.0 * @category getter */ export declare const keySet: <K, V>(self: HashMap<K, V>) => HashSet<K>; /** * Returns an `IterableIterator` of the values within the `HashMap`. * * @since 2.0.0 * @category getters */ export declare const values: <K, V>(self: HashMap<K, V>) => IterableIterator<V>; /** * Returns an `Array` of the values within the `HashMap`. * * @since 3.13.0 * @category getters */ export declare const toValues: <K, V>(self: HashMap<K, V>) => Array<V>; /** * Returns an `IterableIterator` of the entries within the `HashMap`. * * @since 2.0.0 * @category getters */ export declare const entries: <K, V>(self: HashMap<K, V>) => IterableIterator<[K, V]>; /** * Returns an `Array<[K, V]>` of the entries within the `HashMap`. * * @since 2.0.0 * @category getters */ export declare const toEntries: <K, V>(self: HashMap<K, V>) => Array<[K, V]>; /** * Returns the number of entries within the `HashMap`. * * @since 2.0.0 * @category getters */ export declare const size: <K, V>(self: HashMap<K, V>) => number; /** * Marks the `HashMap` as mutable. * * @since 2.0.0 */ export declare const beginMutation: <K, V>(self: HashMap<K, V>) => HashMap<K, V>; /** * Marks the `HashMap` as immutable. * * @since 2.0.0 */ export declare const endMutation: <K, V>(self: HashMap<K, V>) => HashMap<K, V>; /** * Mutates the `HashMap` within the context of the provided function. * * @since 2.0.0 */ export declare const mutate: { /** * Mutates the `HashMap` within the context of the provided function. * * @since 2.0.0 */ <K, V>(f: (self: HashMap<K, V>) => void): (self: HashMap<K, V>) => HashMap<K, V>; /** * Mutates the `HashMap` within the context of the provided function. * * @since 2.0.0 */ <K, V>(self: HashMap<K, V>, f: (self: HashMap<K, V>) => void): HashMap<K, V>; }; /** * Set or remove the specified key in the `HashMap` using the specified * update function. The value of the specified key will be computed using the * provided hash. * * The update function will be invoked with the current value of the key if it * exists, or `None` if no such value exists. * * @since 2.0.0 */ export declare const modifyAt: { /** * Set or remove the specified key in the `HashMap` using the specified * update function. The value of the specified key will be computed using the * provided hash. * * The update function will be invoked with the current value of the key if it * exists, or `None` if no such value exists. * * @since 2.0.0 */ <K, V>(key: K, f: HashMap.UpdateFn<V>): (self: HashMap<K, V>) => HashMap<K, V>; /** * Set or remove the specified key in the `HashMap` using the specified * update function. The value of the specified key will be computed using the * provided hash. * * The update function will be invoked with the current value of the key if it * exists, or `None` if no such value exists. * * @since 2.0.0 */ <K, V>(self: HashMap<K, V>, key: K, f: HashMap.UpdateFn<V>): HashMap<K, V>; }; /** * Alter the value of the specified key in the `HashMap` using the specified * update function. The value of the specified key will be computed using the * provided hash. * * The update function will be invoked with the current value of the key if it * exists, or `None` if no such value exists. * * This function will always either update or insert a value into the `HashMap`. * * @since 2.0.0 */ export declare const modifyHash: { /** * Alter the value of the specified key in the `HashMap` using the specified * update function. The value of the specified key will be computed using the * provided hash. * * The update function will be invoked with the current value of the key if it * exists, or `None` if no such value exists. * * This function will always either update or insert a value into the `HashMap`. * * @since 2.0.0 */ <K, V>(key: K, hash: number, f: HashMap.UpdateFn<V>): (self: HashMap<K, V>) => HashMap<K, V>; /** * Alter the value of the specified key in the `HashMap` using the specified * update function. The value of the specified key will be computed using the * provided hash. * * The update function will be invoked with the current value of the key if it * exists, or `None` if no such value exists. * * This function will always either update or insert a value into the `HashMap`. * * @since 2.0.0 */ <K, V>(self: HashMap<K, V>, key: K, hash: number, f: HashMap.UpdateFn<V>): HashMap<K, V>; }; /** * Updates the value of the specified key within the `HashMap` if it exists. * * @since 2.0.0 */ export declare const modify: { /** * Updates the value of the specified key within the `HashMap` if it exists. * * @since 2.0.0 */ <K, V>(key: K, f: (v: V) => V): (self: HashMap<K, V>) => HashMap<K, V>; /** * Updates the value of the specified key within the `HashMap` if it exists. * * @since 2.0.0 */ <K, V>(self: HashMap<K, V>, key: K, f: (v: V) => V): HashMap<K, V>; }; /** * Performs a union of this `HashMap` and that `HashMap`. * * @since 2.0.0 */ export declare const union: { /** * Performs a union of this `HashMap` and that `HashMap`. * * @since 2.0.0 */ <K1, V1>(that: HashMap<K1, V1>): <K0, V0>(self: HashMap<K0, V0>) => HashMap<K1 | K0, V1 | V0>; /** * Performs a union of this `HashMap` and that `HashMap`. * * @since 2.0.0 */ <K0, V0, K1, V1>(self: HashMap<K0, V0>, that: HashMap<K1, V1>): HashMap<K0 | K1, V0 | V1>; }; /** * Remove the entry for the specified key in the `HashMap` using the internal * hashing function. * * @since 2.0.0 */ export declare const remove: { /** * Remove the entry for the specified key in the `HashMap` using the internal * hashing function. * * @since 2.0.0 */ <K>(key: K): <V>(self: HashMap<K, V>) => HashMap<K, V>; /** * Remove the entry for the specified key in the `HashMap` using the internal * hashing function. * * @since 2.0.0 */ <K, V>(self: HashMap<K, V>, key: K): HashMap<K, V>; }; /** * Removes all entries in the `HashMap` which have the specified keys. * * @since 2.0.0 */ export declare const removeMany: { /** * Removes all entries in the `HashMap` which have the specified keys. * * @since 2.0.0 */ <K>(keys: Iterable<K>): <V>(self: HashMap<K, V>) => HashMap<K, V>; /** * Removes all entries in the `HashMap` which have the specified keys. * * @since 2.0.0 */ <K, V>(self: HashMap<K, V>, keys: Iterable<K>): HashMap<K, V>; }; /** * Maps over the entries of the `HashMap` using the specified function. * * @since 2.0.0 * @category mapping */ export declare const map: { /** * Maps over the entries of the `HashMap` using the specified function. * * @since 2.0.0 * @category mapping */ <A, V, K>(f: (value: V, key: K) => A): (self: HashMap<K, V>) => HashMap<K, A>; /** * Maps over the entries of the `HashMap` using the specified function. * * @since 2.0.0 * @category mapping */ <K, V, A>(self: HashMap<K, V>, f: (value: V, key: K) => A): HashMap<K, A>; }; /** * Chains over the entries of the `HashMap` using the specified function. * * **NOTE**: the hash and equal of both maps have to be the same. * * @since 2.0.0 * @category sequencing */ export declare const flatMap: { /** * Chains over the entries of the `HashMap` using the specified function. * * **NOTE**: the hash and equal of both maps have to be the same. * * @since 2.0.0 * @category sequencing */ <A, K, B>(f: (value: A, key: K) => HashMap<K, B>): (self: HashMap<K, A>) => HashMap<K, B>; /** * Chains over the entries of the `HashMap` using the specified function. * * **NOTE**: the hash and equal of both maps have to be the same. * * @since 2.0.0 * @category sequencing */ <K, A, B>(self: HashMap<K, A>, f: (value: A, key: K) => HashMap<K, B>): HashMap<K, B>; }; /** * Applies the specified function to the entries of the `HashMap`. * * @since 2.0.0 * @category traversing */ export declare const forEach: { /** * Applies the specified function to the entries of the `HashMap`. * * @since 2.0.0 * @category traversing */ <V, K>(f: (value: V, key: K) => void): (self: HashMap<K, V>) => void; /** * Applies the specified function to the entries of the `HashMap`. * * @since 2.0.0 * @category traversing */ <V, K>(self: HashMap<K, V>, f: (value: V, key: K) => void): void; }; /** * Reduces the specified state over the entries of the `HashMap`. * * @since 2.0.0 * @category folding */ export declare const reduce: { /** * Reduces the specified state over the entries of the `HashMap`. * * @since 2.0.0 * @category folding */ <Z, V, K>(zero: Z, f: (accumulator: Z, value: V, key: K) => Z): (self: HashMap<K, V>) => Z; /** * Reduces the specified state over the entries of the `HashMap`. * * @since 2.0.0 * @category folding */ <K, V, Z>(self: HashMap<K, V>, zero: Z, f: (accumulator: Z, value: V, key: K) => Z): Z; }; /** * Filters entries out of a `HashMap` using the specified predicate. * * @since 2.0.0 * @category filtering */ export declare const filter: { /** * Filters entries out of a `HashMap` using the specified predicate. * * @since 2.0.0 * @category filtering */ <K, A, B extends A>(f: (a: NoInfer<A>, k: K) => a is B): (self: HashMap<K, A>) => HashMap<K, B>; /** * Filters entries out of a `HashMap` using the specified predicate. * * @since 2.0.0 * @category filtering */ <K, A>(f: (a: NoInfer<A>, k: K) => boolean): (self: HashMap<K, A>) => HashMap<K, A>; /** * Filters entries out of a `HashMap` using the specified predicate. * * @since 2.0.0 * @category filtering */ <K, A, B extends A>(self: HashMap<K, A>, f: (a: A, k: K) => a is B): HashMap<K, B>; /** * Filters entries out of a `HashMap` using the specified predicate. * * @since 2.0.0 * @category filtering */ <K, A>(self: HashMap<K, A>, f: (a: A, k: K) => boolean): HashMap<K, A>; }; /** * Filters out `None` values from a `HashMap` of `Options`s. * * @since 2.0.0 * @category filtering */ export declare const compact: <K, A>(self: HashMap<K, Option<A>>) => HashMap<K, A>; /** * Maps over the entries of the `HashMap` using the specified partial function * and filters out `None` values. * * @since 2.0.0 * @category filtering */ export declare const filterMap: { /** * Maps over the entries of the `HashMap` using the specified partial function * and filters out `None` values. * * @since 2.0.0 * @category filtering */ <A, K, B>(f: (value: A, key: K) => Option<B>): (self: HashMap<K, A>) => HashMap<K, B>; /** * Maps over the entries of the `HashMap` using the specified partial function * and filters out `None` values. * * @since 2.0.0 * @category filtering */ <K, A, B>(self: HashMap<K, A>, f: (value: A, key: K) => Option<B>): HashMap<K, B>; }; /** * Returns the first element that satisfies the specified * predicate, or `None` if no such element exists. * * @category elements * @since 2.0.0 */ export declare const findFirst: { /** * Returns the first element that satisfies the specified * predicate, or `None` if no such element exists. * * @category elements * @since 2.0.0 */ <K, A, B extends A>(predicate: (a: NoInfer<A>, k: K) => a is B): (self: HashMap<K, A>) => Option<[K, B]>; /** * Returns the first element that satisfies the specified * predicate, or `None` if no such element exists. * * @category elements * @since 2.0.0 */ <K, A>(predicate: (a: NoInfer<A>, k: K) => boolean): (self: HashMap<K, A>) => Option<[K, A]>; /** * Returns the first element that satisfies the specified * predicate, or `None` if no such element exists. * * @category elements * @since 2.0.0 */ <K, A, B extends A>(self: HashMap<K, A>, predicate: (a: A, k: K) => a is B): Option<[K, B]>; /** * Returns the first element that satisfies the specified * predicate, or `None` if no such element exists. * * @category elements * @since 2.0.0 */ <K, A>(self: HashMap<K, A>, predicate: (a: A, k: K) => boolean): Option<[K, A]>; }; /** * Checks if any entry in a hashmap meets a specific condition. * * @since 3.13.0 * @category elements */ export declare const some: { /** * Checks if any entry in a hashmap meets a specific condition. * * @since 3.13.0 * @category elements */ <K, A>(predicate: (a: NoInfer<A>, k: K) => boolean): (self: HashMap<K, A>) => boolean; /** * Checks if any entry in a hashmap meets a specific condition. * * @since 3.13.0 * @category elements */ <K, A>(self: HashMap<K, A>, predicate: (a: A, k: K) => boolean): boolean; }; /** * Checks if all entries in a hashmap meets a specific condition. * * @param self - The hashmap to check. * @param predicate - The condition to test entries (value, key). * * @since 3.14.0 * @category elements */ export declare const every: { /** * Checks if all entries in a hashmap meets a specific condition. * * @param self - The hashmap to check. * @param predicate - The condition to test entries (value, key). * * @since 3.14.0 * @category elements */ <K, A>(predicate: (a: NoInfer<A>, k: K) => boolean): (self: HashMap<K, A>) => boolean; /** * Checks if all entries in a hashmap meets a specific condition. * * @param self - The hashmap to check. * @param predicate - The condition to test entries (value, key). * * @since 3.14.0 * @category elements */ <K, A>(self: HashMap<K, A>, predicate: (a: A, k: K) => boolean): boolean; }; export {}; //# sourceMappingURL=HashMap.d.ts.map

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ssv445/lorem-ipsum-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server