import { ObjectTypeComposer, SchemaComposer, ComposeInputTypeDefinition, ComposeOutputTypeDefinition } from 'graphql-compose';
export declare type ElasticMappingT = {
    properties: ElasticMappingPropertiesT;
};
export declare type ElasticMappingPropertiesT = {
    [propertyName: string]: ElasticPropertyT;
};
export declare type ElasticPropertyT = {
    type?: string;
    fields?: ElasticMappingPropertiesT;
    properties?: ElasticMappingPropertiesT;
    index?: any;
};
export declare type InputFieldsMap = {
    [field: string]: ComposeInputTypeDefinition;
};
export declare type FieldsMapByElasticType = {
    [elasticType: string]: InputFieldsMap;
    _all: InputFieldsMap;
};
export declare const typeMap: {
    text: string;
    keyword: string;
    string: string;
    byte: string;
    short: string;
    integer: string;
    long: string;
    double: string;
    float: string;
    half_float: string;
    scaled_float: string;
    date: string;
    boolean: string;
    binary: string;
    token_count: string;
    ip: string;
    geo_point: import("graphql").GraphQLScalarType;
    geo_shape: string;
    object: string;
    nested: string;
    completion: string;
    percolator: string;
};
export declare type ConvertOptsT = {
    prefix?: string | null;
    postfix?: string | null;
    pluralFields?: string[];
};
export declare function convertToSourceTC<TContext>(schemaComposer: SchemaComposer<TContext>, mapping: ElasticMappingT | ElasticPropertyT, typeName: string, opts?: ConvertOptsT): ObjectTypeComposer<any, TContext>;
export declare function propertyToSourceGraphQLType<TContext>(schemaComposer: SchemaComposer<TContext>, prop: ElasticPropertyT, typeName?: string, opts?: ConvertOptsT): ComposeOutputTypeDefinition<TContext>;
export declare function inputPropertiesToGraphQLTypes(prop: ElasticPropertyT | ElasticMappingT, fieldName?: string, result?: FieldsMapByElasticType): FieldsMapByElasticType;
export declare function getSubFields(fieldName: string, pluralFields?: string[]): string[];
//# sourceMappingURL=mappingConverter.d.ts.map