import { type MetadataKey, type MetadataValue } from '../types'; export declare class MetadataUtil { /** * Defines metadata on a target object. */ static define>(key: K, value: V, target: Function, propertyKey?: string | symbol): void; /** * Retrieves metadata from a target object. */ static get = MetadataValue>(key: K, target: Function, propertyKey?: string | symbol): V; /** * Sets metadata on a target object. */ static set>(key: K, value: V, target: Function, propertyKey?: string | symbol): void; /** * Adds a value to an array-type metadata key. */ static add, V extends MetadataValue, T extends V[number]>(key: K, target: Function, value: T, propertyKey?: string | symbol): void; }