import { DataSourceProvider, MappingTemplateProvider, TransformerContextProvider } from '@aws-amplify/graphql-transformer-interfaces'; import { ConversationDirectiveConfiguration } from '../conversation-directive-configuration'; export declare const createResolverFunctionDefinition: (definition: Optional) => ResolverFunctionDefinition; export type ResolverFunctionDefinition = { slotName: string; fileName: string; generateTemplate: (config: ConversationDirectiveConfiguration, code: string) => MappingTemplateProvider; dataSource: (config: ConversationDirectiveConfiguration) => DataSourceProvider | undefined; substitutions: (config: ConversationDirectiveConfiguration, ctx: TransformerContextProvider) => Record; }; export type PipelineDefinition = { requestSlots: ResolverFunctionDefinition[]; dataSlot: ResolverFunctionDefinition; responseSlots: ResolverFunctionDefinition[]; field: (config: ConversationDirectiveConfiguration) => { typeName: string; fieldName: string; }; }; export declare const createS3AssetMappingTemplateGenerator: (parentName: string, slotName: string, fieldName: (config: ConversationDirectiveConfiguration) => string) => (config: ConversationDirectiveConfiguration, code: string) => import("@aws-amplify/graphql-transformer-core/lib/cdk-compat/template-asset").S3MappingJSResolverFunctionCode; type Optional = Pick, K> & Omit; export {}; //# sourceMappingURL=resolver-function-definition.d.ts.map