/**
 * Functions to translate JSON schema to GraphQL (input) object types.
 */
import { PreprocessingData } from './types/preprocessing_data';
import { Operation, DataDefinition } from './types/operation';
import { ParameterObject } from './types/oas3';
import { Args, GraphQLType } from './types/graphql';
import { Logger } from '@graphql-mesh/types';
declare type GetArgsParams<TSource, TContext, TArgs> = {
    requestPayloadDef?: DataDefinition;
    parameters: ParameterObject[];
    operation?: Operation;
    data: PreprocessingData<TSource, TContext, TArgs>;
    includeHttpDetails: boolean;
    logger: Logger;
};
declare type CreateOrReuseComplexTypeParams<TSource, TContext, TArgs> = {
    def: DataDefinition;
    operation?: Operation;
    iteration?: number;
    isInputObjectType?: boolean;
    data: PreprocessingData<TSource, TContext, TArgs>;
    includeHttpDetails: boolean;
    logger: Logger;
};
/**
 * Creates and returns a GraphQL type for the given JSON schema.
 */
export declare function getGraphQLType<TSource, TContext, TArgs>({ def, operation, data, iteration, isInputObjectType, includeHttpDetails, logger, }: CreateOrReuseComplexTypeParams<TSource, TContext, TArgs>): GraphQLType;
/**
 * Creates the arguments for resolving a field
 *
 * Arguments that are provided via options will be ignored
 */
export declare function getArgs<TSource, TContext, TArgs>({ requestPayloadDef, parameters, operation, data, includeHttpDetails, logger, }: GetArgsParams<TSource, TContext, TArgs>): Args;
export {};
