import type { Path, PothosFieldConfig, SchemaTypes } from '@pothos/core';
import type { AuthScopeMap } from './index.js';
export declare function canCache<Types extends SchemaTypes>(map: AuthScopeMap<Types>): boolean;
export declare function cacheKey(path: Path | undefined): string;
export declare function isObjectOrInterface(fieldConfig: PothosFieldConfig<never>): fieldConfig is {
    description?: import("graphql/jsutils/Maybe.js").Maybe<string>;
    resolve?: import("graphql").GraphQLFieldResolver<unknown, object, any, unknown> | undefined;
    subscribe?: import("graphql").GraphQLFieldResolver<unknown, object, any, unknown> | undefined;
    deprecationReason?: import("graphql/jsutils/Maybe.js").Maybe<string>;
    extensions?: import("graphql/jsutils/Maybe.js").Maybe<Readonly<import("graphql").GraphQLFieldExtensions<unknown, object, any>>>;
    astNode?: import("graphql/jsutils/Maybe.js").Maybe<import("graphql").FieldDefinitionNode>;
    kind: "Object";
    graphqlKind: "Object";
    parentType: string;
    name: string;
    type: import("@pothos/core").PothosOutputFieldType<never>;
    args: Record<string, import("@pothos/core").PothosInputFieldConfig<never>>;
    argMappers: ((args: Record<string, unknown>, context: never, info: import("@pothos/core").PartialResolveInfo) => Record<string, unknown>)[];
    pothosOptions: never;
} | {
    description?: import("graphql/jsutils/Maybe.js").Maybe<string>;
    resolve?: import("graphql").GraphQLFieldResolver<unknown, object, any, unknown> | undefined;
    subscribe?: import("graphql").GraphQLFieldResolver<unknown, object, any, unknown> | undefined;
    deprecationReason?: import("graphql/jsutils/Maybe.js").Maybe<string>;
    extensions?: import("graphql/jsutils/Maybe.js").Maybe<Readonly<import("graphql").GraphQLFieldExtensions<unknown, object, any>>>;
    astNode?: import("graphql/jsutils/Maybe.js").Maybe<import("graphql").FieldDefinitionNode>;
    kind: "Interface";
    graphqlKind: "Interface";
    parentType: string;
    name: string;
    type: import("@pothos/core").PothosOutputFieldType<never>;
    args: Record<string, import("@pothos/core").PothosInputFieldConfig<never>>;
    argMappers: ((args: Record<string, unknown>, context: never, info: import("@pothos/core").PartialResolveInfo) => Record<string, unknown>)[];
    pothosOptions: never;
};
//# sourceMappingURL=util.d.ts.map
