import { TSFlatCollectionMetadata } from './flat-collection';
import { TSFlatObjectMetadata } from './flat-object';
import { TSFlatPropertyMetadata } from './flat-property';
import { Type } from './helpers';
import 'reflect-metadata';
export declare class Reflection {
    static apiMap: string;
    static apiMapFlatObject: string;
    static apiMapFlatProperty: string;
    static apiMapCollection: string;
    private static getApiMapFlatPropertyKey;
    private static getApiMapFlatCollectionKey;
    static getFlatPropertyMetadata(target: Type<any>, propertyKey: string): TSFlatPropertyMetadata | undefined;
    static getFlatCollectionMetadata(target: Type<any>, propertyKey: string): TSFlatCollectionMetadata | undefined;
    static getFlatObjectMetadata(type: Type<any>): TSFlatObjectMetadata | undefined;
    static setFlatPropertyMetadata(value: TSFlatPropertyMetadata, target: Type<any>, propertyKey: string): void;
    static setFlatCollectionMetadata(value: TSFlatCollectionMetadata, target: Type<any>, propertyKey: string): void;
    static setFlatObject(value: TSFlatObjectMetadata, target: Type<any>): void;
}
