import { type PropertyType } from './decorators/primitive.ts'; import { type Condition, ConditionSymbol } from './decorators/condition.ts'; import { type Controller, ControllerSymbol } from './decorators/controller.ts'; import { type Transformer, TransformerSymbol } from './decorators/transformer.ts'; import { type Validator, ValidatorSymbol } from './decorators/validator.ts'; import { type BitField, BitFieldSymbol } from './decorators/bitfield.ts'; import { type Ctx, CtxSymbol } from './decorators/context.ts'; import { type PrePost, PreFunctionSymbol, PostFunctionSymbol, PreClassFunctionSymbol, PostClassFunctionSymbol, PrePostSymbols, PrePostClass } from './decorators/prepost.ts'; import { type DecoratorMetadataObject } from './types.ts'; import './symbol-polyfill.ts'; type MetadataSymbol = typeof BitFieldSymbol | typeof PreClassFunctionSymbol | typeof PreFunctionSymbol | typeof ConditionSymbol | typeof ControllerSymbol | typeof TransformerSymbol | typeof ValidatorSymbol | typeof CtxSymbol | typeof PostFunctionSymbol | typeof PostClassFunctionSymbol; declare function getMetadata(metadata: DecoratorMetadataObject, propertyKey: string | number | symbol, metadataKey: MetadataSymbol, reverse?: boolean): T[]; declare function setMetadata(metadata: DecoratorMetadataObject, propertyKey: string | symbol | number, metadataKey: MetadataSymbol, newValue: any, reverse?: boolean): T[]; declare function getFields(metadata: DecoratorMetadataObject): Array>; declare function getField(metadata: DecoratorMetadataObject, propertyKey: keyof This): PropertyType | undefined; declare function setField(metadata: DecoratorMetadataObject, field: PropertyType): Array>; declare function removeField(metadata: DecoratorMetadataObject, propertyKey: keyof This): Array>; declare function isFieldDecorated(metadata: DecoratorMetadataObject, propertyKey: keyof This): boolean; declare function getClassPre(metadata: DecoratorMetadataObject): Array>; declare function getPre(metadata: DecoratorMetadataObject, propertyKey: keyof This): Array>; declare function getConditions(metadata: DecoratorMetadataObject, propertyKey: keyof This): Array>; declare function setCondition(metadata: DecoratorMetadataObject, propertyKey: keyof This, condition: Condition): Array>; declare function getControllers(metadata: DecoratorMetadataObject, propertyKey: keyof This): Array>; declare function setController(metadata: DecoratorMetadataObject, propertyKey: keyof This, controller: Controller): Array>; declare function getTransformers(metadata: DecoratorMetadataObject, propertyKey: keyof This, reverse?: boolean): Array>; declare function setTransformer(metadata: DecoratorMetadataObject, propertyKey: string | symbol, transformer: Transformer): Array>; declare function getValidators(metadata: DecoratorMetadataObject, propertyKey: keyof This): Array>; declare function setValidator(metadata: DecoratorMetadataObject, propertyKey: string | symbol, validator: Validator): Array>; declare function getPost(metadata: DecoratorMetadataObject, propertyKey: keyof This): Array>; declare function getClassPost(metadata: DecoratorMetadataObject): Array>; declare function setPrePost(metadata: DecoratorMetadataObject, sym: PrePostSymbols, prepost: PrePost | PrePostClass, propertyKey?: keyof This): Array>; declare function removePrePost(metadata: DecoratorMetadataObject, sym: PrePostSymbols, prepost: PrePost | PrePostClass, propertyKey?: keyof This): Array>; declare function getBitField(metadata: DecoratorMetadataObject, propertyKey: keyof This): BitField | undefined; declare function getBitFields(metadata: DecoratorMetadataObject): Array>; declare function setBitField(metadata: DecoratorMetadataObject, bitfield: BitField): Array>; declare function getContext(metadata: DecoratorMetadataObject, propertyKey: keyof This): Array>; declare function setContext(metadata: DecoratorMetadataObject, propertyKey: keyof This, ctx: Ctx): Array>; declare const _default: { getMetadata: typeof getMetadata; setMetadata: typeof setMetadata; getField: typeof getField; getFields: typeof getFields; setField: typeof setField; removeField: typeof removeField; isFieldDecorated: typeof isFieldDecorated; getClassPre: typeof getClassPre; getPre: typeof getPre; getConditions: typeof getConditions; setCondition: typeof setCondition; getControllers: typeof getControllers; setController: typeof setController; getTransformers: typeof getTransformers; setTransformer: typeof setTransformer; getValidators: typeof getValidators; setValidator: typeof setValidator; getPost: typeof getPost; getClassPost: typeof getClassPost; setPrePost: typeof setPrePost; removePrePost: typeof removePrePost; getBitField: typeof getBitField; getBitFields: typeof getBitFields; setBitField: typeof setBitField; getContext: typeof getContext; setContext: typeof setContext; }; export default _default;