import { Edm } from "@tjc-group/odata-v4-metadata";
import { Xml } from './XmlCreator';
export declare class XmlMetadata {
    metadata: Edm.Edmx;
    private options;
    constructor(options: any, edmx: Edm.Edmx);
    processMetadata(): any;
    buildEdmx(xml: Xml.XmlCreator, edmx: Edm.Edmx): void;
    buildDataServices(xml: Xml.XmlCreator, dataservices: Edm.DataServices): void;
    buildSchema(xml: Xml.XmlCreator, schemas: Edm.Schema[]): void;
    buildTypeDefinitions(xml: Xml.XmlCreator, typeDefinitions: Edm.TypeDefinition[]): void;
    buildEnumTypes(xml: Xml.XmlCreator, enumTypes: Edm.EnumType[]): void;
    buildEntityTypes(xml: Xml.XmlCreator, entityTypes: Edm.EntityType[]): void;
    buildComplexTypes(xml: Xml.XmlCreator, complexTypes: Edm.ComplexType[]): void;
    buildType(xml: Xml.XmlCreator, type: Edm.EntityType | Edm.ComplexType, xmlElementName: string): void;
    buildTypeKeys(xml: Xml.XmlCreator, key: Edm.Key): void;
    buildTypeProperties(xml: Xml.XmlCreator, properties: Edm.Property[]): void;
    typePropertyAttributes: Object;
    buildTypeNavigationProperties(xml: Xml.XmlCreator, navigationProperties: Edm.NavigationProperty[]): void;
    buildNavPropertyReferentialConstraints(xml: Xml.XmlCreator, referentialConstraints: Edm.ReferentialConstraint[]): void;
    typeNavigationPropertyAttributes: Object;
    buildEnumMembers(xml: Xml.XmlCreator, members: Edm.Member[]): void;
    typeMemberAttributes: Object;
    buildAttributes(xml: Xml.XmlCreator, object: any, mappings: any): void;
    buildActions(xml: Xml.XmlCreator, actions: Edm.Action[]): void;
    buildFunctions(xml: Xml.XmlCreator, functions: Edm.Function[]): void;
    buildParameters(xml: Xml.XmlCreator, parameters: Edm.Parameter[]): void;
    parameterAttributes: Object;
    buildReturnType(xml: Xml.XmlCreator, returnType: Edm.ReturnType): void;
    buildEntityContainer(xml: Xml.XmlCreator, entityContainers: Edm.EntityContainer[]): void;
    buildEntitySets(xml: Xml.XmlCreator, entitySets: Edm.EntitySet[]): void;
    buildActionImports(xml: Xml.XmlCreator, actionImports: Edm.ActionImport[]): void;
    buildFunctionImports(xml: Xml.XmlCreator, functionImports: Edm.FunctionImport[]): void;
    buildSchemaAnnotations(xml: Xml.XmlCreator, schemaAnnotations: Edm.Annotations[]): void;
    buildAnnotations(xml: Xml.XmlCreator, annotations: Edm.Annotation[]): void;
    buildCollectionAnnotation(xml: Xml.XmlCreator, value: any[], annotConfig: any, _: Edm.Annotation): void;
    annotationAttributes: Object;
    annotationTypes: Object;
}
