import { InspectionOptions, MetadataAccessor, MetadataMap } from '@loopback/metadata';
import { ModelDefinition, ModelDefinitionSyntax, PropertyDefinition } from './model';
export declare const MODEL_KEY: MetadataAccessor<Partial<ModelDefinitionSyntax>, ClassDecorator>;
export declare const MODEL_PROPERTIES_KEY: MetadataAccessor<PropertyDefinition, PropertyDecorator>;
export declare const MODEL_WITH_PROPERTIES_KEY: MetadataAccessor<ModelDefinition, ClassDecorator>;
export type PropertyMap = MetadataMap<Partial<PropertyDefinition>>;
export declare class ModelMetadataHelper {
    /**
     * A utility function to simplify retrieving metadata from a target model and
     * its properties.
     * @param target - The class from which to retrieve metadata.
     * @param options - An options object for the MetadataInspector to customize
     * the output of the metadata retrieval functions.
     */
    static getModelMetadata(target: Function, options?: InspectionOptions): ModelDefinition | {};
}
