import { SchemaDirectiveVisitor } from "graphql-tools"; import { GraphQLObjectType, GraphQLField, GraphQLInterfaceType } from "graphql"; export declare function isUserAuthorized(serviceUA: string, email: string, permission: string, iamURL: string, iamToken: string, servicePermissionsIdentifier?: string): Promise; export declare class AuthorizationDirective extends SchemaDirectiveVisitor { static serviceUA: string; static servicePermissionsIdentifier: string; static emailPath: string; static iamURL: string; static iamToken: string; visitFieldDefinition(field: GraphQLField, _detail: { objectType: GraphQLObjectType | GraphQLInterfaceType; }): void | GraphQLField | null; } interface Options { serviceUserAgent: string; emailPath?: string; iamURL: string; iamToken: string; servicePermissionsIdentifier?: string; } export declare function authorizationDirective(options: Options): SchemaDirectiveVisitor; export {};