import { IDefinition } from '../models/common/IDefinition';
import { OasDocument } from '../../openapi/models/OasDocument';
import { OasSchema } from '../../openapi/models/OasSchema';
/**
 * @author eric.wittmann@gmail.com
 * @class
 */
export declare class OasSchemaFactory {
    static resolveType(thing: any, schema: OasSchema): void;
    static resolveAll(object: any, schema: OasSchema): void;
    /**
     * Creates a new definition schema from a given example.  This method will analyze the example
     * object and create a new schema object that represents the example.  Note that this method
     * does not support arbitrarily complicated examples, and should be used as a starting point
     * for a schema, not a canonical one.
     * @param {OasDocument} document
     * @param {string} name
     * @param {*} example
     * @return {*}
     */
    static createSchemaDefinitionFromExample(document: OasDocument, name: string, example: any): IDefinition;
}
