import { NameNode, TypeNode, NamedTypeNode, GraphQLObjectType, GraphQLOutputType, GraphQLNamedType, GraphQLSchema, StringValueNode } from 'graphql'; import { ScalarsMap } from '@graphql-codegen/visitor-plugin-common'; export declare const getConfigValue: (value: T, defaultValue: T) => T; export declare function getBaseType(type: GraphQLOutputType): GraphQLNamedType; export declare function quoteIfNeeded(array: string[], joinWith?: string): string; export declare function block(array: any): string; export declare function wrapWithSingleQuotes(str: string | NameNode): string; export declare function breakLine(str: string): string; export declare function indent(str: string, count?: number): string; export declare function indentMultiline(str: string, count?: number): string; export interface DeclarationBlockConfig { blockWrapper?: string; blockTransformer?: (block: string) => string; enumNameValueSeparator?: string; } export declare function transformComment(comment: string | StringValueNode, indentLevel?: number): string; export declare class DeclarationBlock { private _config; _decorator: any; _export: boolean; _name: any; _kind: any; _methodName: any; _content: any; _block: any; _nameGenerics: any; _comment: any; _ignoreBlockWrapper: boolean; constructor(_config: DeclarationBlockConfig); withDecorator(decorator: string): DeclarationBlock; export(exp?: boolean): DeclarationBlock; asKind(kind: string): DeclarationBlock; withComment(comment: string | StringValueNode | null): DeclarationBlock; withMethodCall(methodName: string, ignoreBlockWrapper?: boolean): DeclarationBlock; withBlock(block: string): DeclarationBlock; withContent(content: string): DeclarationBlock; withName(name: string | NameNode, generics?: string | null): DeclarationBlock; readonly string: string; } export declare function getBaseTypeNode(typeNode: TypeNode): NamedTypeNode; export declare function convertNameParts(str: string, func: (str: string) => string, removeUnderscore?: boolean): string; export declare function toPascalCase(str: string, transformUnderscore?: boolean): string; export declare function buildScalars(schema: GraphQLSchema, scalarsMapping: ScalarsMap): ScalarsMap; export declare function isRootType(type: GraphQLNamedType, schema: GraphQLSchema): type is GraphQLObjectType; export declare function getRootTypeNames(schema: GraphQLSchema): string[]; export declare function stripMapperTypeInterpolation(identifier: string): string; export declare const OMIT_TYPE = "export type Omit = Pick>;"; export declare const REQUIRE_FIELDS_TYPE = "export type RequireFields = { [X in Exclude]?: T[X] } & { [P in K]-?: NonNullable };";