import "reflect-metadata"; import { PropertyInfo, TypeReference } from "../types"; import { PropertyTransformer } from "../data/property-transformer"; export type EntityPropertyOptions = { type?: TypeReference; default?: unknown; nullable?: boolean; unique?: boolean; index?: boolean; transformer?: PropertyTransformer; }; export declare const EntityProperty: (domainFieldName: string, options?: EntityPropertyOptions) => (target: unknown, propertyKey: string) => void; export declare class PropertyResolver { private instance; private cachedMappings; constructor(modelClass: new () => T); resolveDatabaseField(domainField: string): (PropertyInfo & { modelFieldName: string; }) | undefined; getAllPropertyMappings(): Array; resolveByModelField(modelFieldName: string): (PropertyInfo & { domainFieldName: string; }) | undefined; } export type UseSessionOptions = { type?: string; priority?: number; scope?: string; }; export declare const UseSession: (options?: UseSessionOptions) => (target: any, propertyKey: string | symbol) => void; export type IsTransactionOptions = { tag?: string; }; export declare const IsTransaction: (options?: IsTransactionOptions) => ClassDecorator; export declare function Transactional(options?: { sessionComponents?: string[]; tag?: string; autoDetectSessions?: boolean; }): MethodDecorator;