import { DynamoDbDataSourceOptions, FunctionRuntimeTemplate, MappingTemplateProvider, SearchableDataSourceOptions, TransformHostProvider, VpcConfig } from '@aws-amplify/graphql-transformer-interfaces'; import { BaseDataSource, DataSourceOptions, DynamoDbDataSource, HttpDataSource, HttpDataSourceOptions, LambdaDataSource, NoneDataSource, CfnResolver, CfnFunctionConfiguration } from 'aws-cdk-lib/aws-appsync'; import { ITable } from 'aws-cdk-lib/aws-dynamodb'; import { IRole } from 'aws-cdk-lib/aws-iam'; import { IFunction, ILayerVersion, Runtime } from 'aws-cdk-lib/aws-lambda'; import { Duration } from 'aws-cdk-lib'; import { Construct } from 'constructs'; import { AppSyncFunctionConfiguration } from './appsync-function'; import { SearchableDataSource } from './cdk-compat/searchable-datasource'; import { GraphQLApi } from './graphql-api'; export interface DefaultTransformHostOptions { readonly api: GraphQLApi; } export declare class DefaultTransformHost implements TransformHostProvider { private dataSources; private resolvers; private appsyncFunctions; private api; constructor(options: DefaultTransformHostOptions); setAPI(api: GraphQLApi): void; hasDataSource(name: string): boolean; getDataSource: (name: string) => BaseDataSource | void; hasResolver: (typeName: string, fieldName: string) => boolean; getResolver: (typeName: string, fieldName: string) => CfnResolver | void; addSearchableDataSource(name: string, awsRegion: string, endpoint: string, options?: SearchableDataSourceOptions, scope?: Construct): SearchableDataSource; addHttpDataSource: (name: string, endpoint: string, options?: DataSourceOptions, scope?: Construct) => HttpDataSource; addDynamoDbDataSource: (name: string, table: ITable, options?: DynamoDbDataSourceOptions, scope?: Construct) => DynamoDbDataSource; addNoneDataSource: (name: string, options?: DataSourceOptions, scope?: Construct) => NoneDataSource; addLambdaDataSource: (name: string, lambdaFunction: IFunction, options?: DataSourceOptions, scope?: Construct) => LambdaDataSource; addAppSyncJsRuntimeFunction: (name: string, codeMappingTemplate: MappingTemplateProvider, dataSourceName: string, scope?: Construct) => AppSyncFunctionConfiguration; addAppSyncVtlRuntimeFunction: (name: string, requestMappingTemplate: MappingTemplateProvider, responseMappingTemplate: MappingTemplateProvider, dataSourceName: string, scope?: Construct) => AppSyncFunctionConfiguration; addAppSyncFunction: (name: string, mappingTemplate: FunctionRuntimeTemplate, dataSourceName: string, scope?: Construct, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty) => AppSyncFunctionConfiguration; addJsRuntimeResolver: (typeName: string, fieldName: string, codeMappingTemplate: MappingTemplateProvider, resolverLogicalId?: string, dataSourceName?: string, pipelineConfig?: string[], scope?: Construct) => CfnResolver; addVtlRuntimeResolver: (typeName: string, fieldName: string, requestMappingTemplate: MappingTemplateProvider, responseMappingTemplate: MappingTemplateProvider, resolverLogicalId?: string, dataSourceName?: string, pipelineConfig?: string[], scope?: Construct) => CfnResolver; addResolver: (typeName: string, fieldName: string, mappingTemplate: FunctionRuntimeTemplate, resolverLogicalId?: string, dataSourceName?: string, pipelineConfig?: string[], scope?: Construct, runtime?: CfnFunctionConfiguration.AppSyncRuntimeProperty) => CfnResolver; addLambdaFunction: (functionName: string, functionKey: string, handlerName: string, filePath: string, runtime: Runtime, layers?: ILayerVersion[], role?: IRole, environment?: { [key: string]: string; } | undefined, timeout?: Duration, scope?: Construct, vpc?: VpcConfig, description?: string) => IFunction; protected doAddNoneDataSource(id: string, options?: DataSourceOptions, scope?: Construct): NoneDataSource; protected doAddDynamoDbDataSource(id: string, table: ITable, options?: DynamoDbDataSourceOptions, scope?: Construct): DynamoDbDataSource; protected doAddHttpDataSource(id: string, endpoint: string, options?: HttpDataSourceOptions, scope?: Construct): HttpDataSource; protected doAddSearchableDataSource(id: string, endpoint: string, region: string, options?: SearchableDataSourceOptions, scope?: Construct): SearchableDataSource; protected doAddLambdaDataSource(id: string, lambdaFunction: IFunction, options?: DataSourceOptions, scope?: Construct): LambdaDataSource; private getMappingTemplateHash; private bindMappingTemplate; } //# sourceMappingURL=transform-host.d.ts.map