import hl = require("../highLevelAST");
import wrapper = require("../artifacts/raml10parser");
import schemaGenApi = require("./schemaModelGenApi");
export declare class SchemaToModelGenerator implements schemaGenApi.SchemaToModelGenerator {
    generateText(schema: string): string;
    generateObj(e: any, lev: number): string;
    generateTo(api: hl.IHighLevelNode, schema: string, title?: string): string[];
    generateObjTo(type: wrapper.TypeDeclarationImpl, e: any): void;
    makeTypeField(name: string, p: any): wrapper.TypeDeclarationImpl;
    makeType(name: string, type: string): wrapper.TypeDeclarationImpl;
    generateItemsTo(a: wrapper.ArrayTypeDeclarationImpl, obj: any): void;
}
export declare class ModelToSchemaGenerator {
    generateSchema(node: hl.IHighLevelNode): any;
    isSimpleType(name: any): boolean;
    generateType(type: hl.IHighLevelNode): any;
    makeUnion(typelist: any, types: any): any[];
    generateTypeExp(type: string, types: any): any;
    allTypes(node: hl.IHighLevelNode): {};
    resolveType(node: hl.IHighLevelNode, name: string): any;
    generateProperty(node: hl.IHighLevelNode, optional: boolean): any;
    generateProperties(node: hl.IHighLevelNode): any;
}
