import * as core from "@terrascript/core"; export interface AwsIamConfigArgs extends core.SchemaArgs { signingRegion?: string | core.StringOut; signingServiceName?: string | core.StringOut; } export declare class AwsIamConfig extends core.Schema { signingRegion?: string | core.StringOut; signingServiceName?: string | core.StringOut; } export interface AuthorizationConfigArgs extends core.SchemaArgs { authorizationType?: string | core.StringOut; awsIamConfig?: AwsIamConfig; } export declare class AuthorizationConfig extends core.Schema { authorizationType?: string | core.StringOut; awsIamConfig?: AwsIamConfig; } export interface HttpConfigArgs extends core.SchemaArgs { authorizationConfig?: AuthorizationConfig; endpoint: string | core.StringOut; } export declare class HttpConfig extends core.Schema { authorizationConfig?: AuthorizationConfig; endpoint: string | core.StringOut; } export interface DeltaSyncConfigArgs extends core.SchemaArgs { baseTableTtl?: number | core.NumberOut; deltaSyncTableName: string | core.StringOut; deltaSyncTableTtl?: number | core.NumberOut; } export declare class DeltaSyncConfig extends core.Schema { baseTableTtl?: number | core.NumberOut; deltaSyncTableName: string | core.StringOut; deltaSyncTableTtl?: number | core.NumberOut; } export interface DynamodbConfigArgs extends core.SchemaArgs { deltaSyncConfig?: DeltaSyncConfig; region?: string | core.StringOut; tableName: string | core.StringOut; useCallerCredentials?: boolean | core.BooleanOut; versioned?: boolean | core.BooleanOut; } export declare class DynamodbConfig extends core.Schema { deltaSyncConfig?: DeltaSyncConfig; region?: string | core.StringOut; tableName: string | core.StringOut; useCallerCredentials?: boolean | core.BooleanOut; versioned?: boolean | core.BooleanOut; } export interface LambdaConfigArgs extends core.SchemaArgs { functionArn: string | core.StringOut; } export declare class LambdaConfig extends core.Schema { functionArn: string | core.StringOut; } export interface ElasticsearchConfigArgs extends core.SchemaArgs { endpoint: string | core.StringOut; region?: string | core.StringOut; } export declare class ElasticsearchConfig extends core.Schema { endpoint: string | core.StringOut; region?: string | core.StringOut; } export interface HttpEndpointConfigArgs extends core.SchemaArgs { awsSecretStoreArn: string | core.StringOut; databaseName?: string | core.StringOut; dbClusterIdentifier: string | core.StringOut; region?: string | core.StringOut; schema?: string | core.StringOut; } export declare class HttpEndpointConfig extends core.Schema { awsSecretStoreArn: string | core.StringOut; databaseName?: string | core.StringOut; dbClusterIdentifier: string | core.StringOut; region?: string | core.StringOut; schema?: string | core.StringOut; } export interface RelationalDatabaseConfigArgs extends core.SchemaArgs { httpEndpointConfig?: HttpEndpointConfig; sourceType?: string | core.StringOut; } export declare class RelationalDatabaseConfig extends core.Schema { httpEndpointConfig?: HttpEndpointConfig; sourceType?: string | core.StringOut; } export interface DatasourceArgs extends core.ResourceArgs { /** * (Required) The API ID for the GraphQL API for the data source. */ apiId: string | core.StringOut; /** * (Optional) A description of the data source. */ description?: string | core.StringOut; /** * (Optional) DynamoDB settings. See [below](#dynamodb_config) */ dynamodbConfig?: DynamodbConfig; /** * (Optional) Amazon Elasticsearch settings. See [below](#elasticsearch_config) */ elasticsearchConfig?: ElasticsearchConfig; /** * (Optional) HTTP settings. See [below](#http_config) */ httpConfig?: HttpConfig; /** * (Optional) AWS Lambda settings. See [below](#lambda_config) */ lambdaConfig?: LambdaConfig; /** * (Required) A user-supplied name for the data source. */ name: string | core.StringOut; relationalDatabaseConfig?: RelationalDatabaseConfig; /** * (Optional) The IAM service role ARN for the data source. */ serviceRoleArn?: string | core.StringOut; /** * (Required) The type of the Data Source. Valid values: `AWS_LAMBDA`, `AMAZON_DYNAMODB`, `AMAZON_ELAST * ICSEARCH`, `HTTP`, `NONE`, `RELATIONAL_DATABASE`. */ type: string | core.StringOut; } export declare class Datasource extends core.Resource { /** * (Required) The API ID for the GraphQL API for the data source. */ apiId: string | core.StringOut; /** * The ARN */ arn: string | core.StringOut; /** * (Optional) A description of the data source. */ description?: string | core.StringOut; /** * (Optional) DynamoDB settings. See [below](#dynamodb_config) */ dynamodbConfig?: DynamodbConfig; /** * (Optional) Amazon Elasticsearch settings. See [below](#elasticsearch_config) */ elasticsearchConfig?: ElasticsearchConfig; /** * (Optional) HTTP settings. See [below](#http_config) */ httpConfig?: HttpConfig; id: string | core.StringOut; /** * (Optional) AWS Lambda settings. See [below](#lambda_config) */ lambdaConfig?: LambdaConfig; /** * (Required) A user-supplied name for the data source. */ name: string | core.StringOut; relationalDatabaseConfig?: RelationalDatabaseConfig; /** * (Optional) The IAM service role ARN for the data source. */ serviceRoleArn?: string | core.StringOut; /** * (Required) The type of the Data Source. Valid values: `AWS_LAMBDA`, `AMAZON_DYNAMODB`, `AMAZON_ELAST * ICSEARCH`, `HTTP`, `NONE`, `RELATIONAL_DATABASE`. */ type: string | core.StringOut; constructor(name: string, args?: DatasourceArgs); getNamespace(): string; } //# sourceMappingURL=datasource.d.ts.map