import { Optional } from "./Types.js"; import { List } from "./List.js"; import { Entry } from "./Object.js"; import "reflect-metadata"; //#region src/types/Meta.d.ts type MetaParseOptions = { initial?: any; skipUndefined?: boolean; }; declare class ClassMeta { readonly subject: any; private readonly data; constructor(subject: any, data?: any); get: (key: string) => T; set: (key: string, value: T) => T; entries: () => List>; parse: (f: (v: Value) => Out, options?: MetaParseOptions) => Record; properties: (key?: string) => List; keys: (key: string) => List; values: () => List; property: (property: string | symbol) => PropertyMeta; } declare class PropertyMeta { readonly subject: any; readonly property: string | symbol; private readonly data; constructor(subject: any, property: string | symbol, data?: any); get value(): any; get: (key: string) => Optional; set: (key: string, value: T) => T; } export declare const meta: (subject: unknown) => ClassMeta; //#endregion export {}; //# sourceMappingURL=Meta.d.ts.map