@graphql-mesh/utils
Version:
17 lines (16 loc) • 1.38 kB
text/typescript
import type { GraphQLResolveInfo } from 'graphql';
import type { MeshContext } from '@graphql-mesh/runtime';
import { type HivePubSub, type ImportFn, type MeshPubSub, type YamlConfig } from '@graphql-mesh/types';
import type { IResolvers, MaybePromise } from '@graphql-tools/utils';
export interface PubSubOperationOptions {
pubsubTopic: string;
pubsub?: MeshPubSub | HivePubSub;
filterBy?: string;
result?: string;
}
export declare function getResolverForPubSubOperation(opts: PubSubOperationOptions, valuesFromResults?: (result: any) => any): {
subscribe: (root: any, args: Record<string, any>, context: MeshContext, info: GraphQLResolveInfo) => MaybePromise<AsyncIterator<any>>;
resolve: (payload: any, _: any, ctx: any, info: GraphQLResolveInfo) => any;
};
export declare function resolveAdditionalResolversWithoutImport(additionalResolver: YamlConfig.AdditionalStitchingResolverObject | YamlConfig.AdditionalSubscriptionObject | YamlConfig.AdditionalStitchingBatchResolverObject, pubsub?: MeshPubSub | HivePubSub): IResolvers;
export declare function resolveAdditionalResolvers(baseDir: string, additionalResolvers: (string | YamlConfig.AdditionalStitchingResolverObject | YamlConfig.AdditionalSubscriptionObject | YamlConfig.AdditionalStitchingBatchResolverObject)[], importFn: ImportFn, pubsub: MeshPubSub | HivePubSub): Promise<IResolvers[]>;