import type { Predicate } from "./is.js"; /** * A type that has metadata. */ export type WithMetadata = { __unknownutil_metadata: T; }; /** * Get typeof the metadata */ export type GetMetadata = T extends WithMetadata ? M : never; /** * Get metadata from the given value */ export declare function getMetadata(v: unknown): T | undefined; /** * Metadata of a predicate factory function. */ export type PredicateFactoryMetadata = { name: string; args: unknown[]; }; /** * Set metadata to a predicate factory function. */ export declare function setPredicateFactoryMetadata

, M extends PredicateFactoryMetadata>(pred: P, metadata: M): P & WithMetadata; /** * Get metadata from a predicate factory function. */ export declare function getPredicateFactoryMetadata(v: WithMetadata): M; //# sourceMappingURL=metadata.d.ts.map