agent-claw: automated task changes
This commit is contained in:
436
cdk/node_modules/aws-cdk-lib/aws-appsync/lib/eventapi.d.ts
generated
vendored
Normal file
436
cdk/node_modules/aws-cdk-lib/aws-appsync/lib/eventapi.d.ts
generated
vendored
Normal file
@@ -0,0 +1,436 @@
|
||||
import type { Construct } from 'constructs';
|
||||
import type { IApi } from './api-base';
|
||||
import { ApiBase } from './api-base';
|
||||
import type { AppSyncLogConfig, AppSyncDomainOptions } from './appsync-common';
|
||||
import { AppSyncEventResource } from './appsync-common';
|
||||
import type { CfnApiKey } from './appsync.generated';
|
||||
import type { AppSyncAuthProvider } from './auth-config';
|
||||
import { AppSyncAuthorizationType } from './auth-config';
|
||||
import type { ChannelNamespaceOptions } from './channel-namespace';
|
||||
import { ChannelNamespace } from './channel-namespace';
|
||||
import type { AppSyncDataSourceOptions, AppSyncHttpDataSourceOptions } from './data-source-common';
|
||||
import { AppSyncDynamoDbDataSource, AppSyncHttpDataSource, AppSyncLambdaDataSource, AppSyncRdsDataSource, AppSyncOpenSearchDataSource, AppSyncEventBridgeDataSource } from './data-source-common';
|
||||
import type { ITable } from '../../aws-dynamodb';
|
||||
import type { IEventBus } from '../../aws-events';
|
||||
import type { IGrantable } from '../../aws-iam';
|
||||
import { Grant } from '../../aws-iam';
|
||||
import type { IFunction } from '../../aws-lambda';
|
||||
import type { ILogGroup } from '../../aws-logs';
|
||||
import type { IDomain } from '../../aws-opensearchservice';
|
||||
import type { IDatabaseCluster, IServerlessCluster } from '../../aws-rds';
|
||||
import type { ISecret } from '../../aws-secretsmanager';
|
||||
/**
|
||||
* Authorization configuration for the Event API
|
||||
*/
|
||||
export interface EventApiAuthConfig {
|
||||
/**
|
||||
* Auth providers for use in connection,
|
||||
* publish, and subscribe operations.
|
||||
* @default - API Key authorization
|
||||
*/
|
||||
readonly authProviders?: AppSyncAuthProvider[];
|
||||
/**
|
||||
* Connection auth modes
|
||||
* @default - API Key authorization
|
||||
*/
|
||||
readonly connectionAuthModeTypes?: AppSyncAuthorizationType[];
|
||||
/**
|
||||
* Default publish auth modes
|
||||
* @default - API Key authorization
|
||||
*/
|
||||
readonly defaultPublishAuthModeTypes?: AppSyncAuthorizationType[];
|
||||
/**
|
||||
* Default subscribe auth modes
|
||||
* @default - API Key authorization
|
||||
*/
|
||||
readonly defaultSubscribeAuthModeTypes?: AppSyncAuthorizationType[];
|
||||
}
|
||||
/**
|
||||
* Interface for Event API
|
||||
*/
|
||||
export interface IEventApi extends IApi {
|
||||
/**
|
||||
* The Authorization Types for this Event Api
|
||||
*/
|
||||
readonly authProviderTypes: AppSyncAuthorizationType[];
|
||||
/**
|
||||
* The domain name of the Api's HTTP endpoint.
|
||||
*
|
||||
* @attribute
|
||||
*/
|
||||
readonly httpDns: string;
|
||||
/**
|
||||
* The domain name of the Api's real-time endpoint.
|
||||
*
|
||||
* @attribute
|
||||
*/
|
||||
readonly realtimeDns: string;
|
||||
/**
|
||||
* add a new channel namespace.
|
||||
* @param id the id of the channel namespace
|
||||
* @param options the options for the channel namespace
|
||||
* @returns the channel namespace
|
||||
*/
|
||||
addChannelNamespace(id: string, options?: ChannelNamespaceOptions): ChannelNamespace;
|
||||
/**
|
||||
* Add a new DynamoDB data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param table The DynamoDB table backing this data source
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addDynamoDbDataSource(id: string, table: ITable, options?: AppSyncDataSourceOptions): AppSyncDynamoDbDataSource;
|
||||
/**
|
||||
* add a new http data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param endpoint The http endpoint
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addHttpDataSource(id: string, endpoint: string, options?: AppSyncHttpDataSourceOptions): AppSyncHttpDataSource;
|
||||
/**
|
||||
* Add an EventBridge data source to this api
|
||||
* @param id The data source's id
|
||||
* @param eventBus The EventBridge EventBus on which to put events
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addEventBridgeDataSource(id: string, eventBus: IEventBus, options?: AppSyncDataSourceOptions): AppSyncEventBridgeDataSource;
|
||||
/**
|
||||
* add a new Lambda data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param lambdaFunction The Lambda function to call to interact with this data source
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addLambdaDataSource(id: string, lambdaFunction: IFunction, options?: AppSyncDataSourceOptions): AppSyncLambdaDataSource;
|
||||
/**
|
||||
* add a new Rds data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param serverlessCluster The database cluster to interact with this data source
|
||||
* @param secretStore The secret store that contains the username and password for the database cluster
|
||||
* @param databaseName The optional name of the database to use within the cluster
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addRdsDataSource(id: string, serverlessCluster: IServerlessCluster | IDatabaseCluster, secretStore: ISecret, databaseName?: string, options?: AppSyncDataSourceOptions): AppSyncRdsDataSource;
|
||||
/**
|
||||
* Add a new OpenSearch data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param domain The OpenSearch domain for this data source
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addOpenSearchDataSource(id: string, domain: IDomain, options?: AppSyncDataSourceOptions): AppSyncOpenSearchDataSource;
|
||||
/**
|
||||
* Adds an IAM policy statement associated with this Event API to an IAM
|
||||
* principal's policy.
|
||||
*
|
||||
* @param grantee The principal
|
||||
* @param resources The set of resources to allow (i.e. ...:[region]:[accountId]:apis/EventApiId/...)
|
||||
* @param actions The actions that should be granted to the principal (i.e. appsync:EventPublish )
|
||||
*/
|
||||
grant(grantee: IGrantable, resources: AppSyncEventResource, ...actions: string[]): Grant;
|
||||
/**
|
||||
* Adds an IAM policy statement for EventPublish access to this EventApi to an IAM
|
||||
* principal's policy.
|
||||
*
|
||||
* @param grantee The principal
|
||||
*/
|
||||
grantPublish(grantee: IGrantable): Grant;
|
||||
/**
|
||||
* Adds an IAM policy statement for EventSubscribe access to this EventApi to an IAM
|
||||
* principal's policy.
|
||||
*
|
||||
* @param grantee The principal
|
||||
*/
|
||||
grantSubscribe(grantee: IGrantable): Grant;
|
||||
/**
|
||||
* Adds an IAM policy statement to publish and subscribe to this API for an IAM principal's policy.
|
||||
*
|
||||
* @param grantee The principal
|
||||
*/
|
||||
grantPublishAndSubscribe(grantee: IGrantable): Grant;
|
||||
/**
|
||||
* Adds an IAM policy statement for EventConnect access to this EventApi to an IAM principal's policy.
|
||||
*
|
||||
* @param grantee The principal
|
||||
*/
|
||||
grantConnect(grantee: IGrantable): Grant;
|
||||
}
|
||||
/**
|
||||
* Base Class for Event API
|
||||
*/
|
||||
export declare abstract class EventApiBase extends ApiBase implements IEventApi {
|
||||
/**
|
||||
* The domain name of the Api's HTTP endpoint.
|
||||
*/
|
||||
abstract readonly httpDns: string;
|
||||
/**
|
||||
* The domain name of the Api's real-time endpoint.
|
||||
*/
|
||||
abstract readonly realtimeDns: string;
|
||||
/**
|
||||
* The Authorization Types for this Event Api
|
||||
*/
|
||||
abstract readonly authProviderTypes: AppSyncAuthorizationType[];
|
||||
/**
|
||||
* add a new Channel Namespace to this API
|
||||
*/
|
||||
addChannelNamespace(id: string, options?: ChannelNamespaceOptions): ChannelNamespace;
|
||||
/**
|
||||
* add a new DynamoDB data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param table The DynamoDB table backing this data source
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addDynamoDbDataSource(id: string, table: ITable, options?: AppSyncDataSourceOptions): AppSyncDynamoDbDataSource;
|
||||
/**
|
||||
* add a new http data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param endpoint The http endpoint
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addHttpDataSource(id: string, endpoint: string, options?: AppSyncHttpDataSourceOptions): AppSyncHttpDataSource;
|
||||
/**
|
||||
* add a new Lambda data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param lambdaFunction The Lambda function to call to interact with this data source
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addLambdaDataSource(id: string, lambdaFunction: IFunction, options?: AppSyncDataSourceOptions): AppSyncLambdaDataSource;
|
||||
/**
|
||||
* add a new Rds data source to this API
|
||||
* @param id The data source's id
|
||||
* @param serverlessCluster The database cluster to interact with this data source
|
||||
* @param secretStore The secret store that contains the username and password for the database cluster
|
||||
* @param databaseName The optional name of the database to use within the cluster
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addRdsDataSource(id: string, serverlessCluster: IServerlessCluster | IDatabaseCluster, secretStore: ISecret, databaseName?: string, options?: AppSyncDataSourceOptions): AppSyncRdsDataSource;
|
||||
/**
|
||||
* Add an EventBridge data source to this api
|
||||
* @param id The data source's id
|
||||
* @param eventBus The EventBridge EventBus on which to put events
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addEventBridgeDataSource(id: string, eventBus: IEventBus, options?: AppSyncDataSourceOptions): AppSyncEventBridgeDataSource;
|
||||
/**
|
||||
* add a new OpenSearch data source to this API
|
||||
*
|
||||
* @param id The data source's id
|
||||
* @param domain The OpenSearch domain for this data source
|
||||
* @param options The optional configuration for this data source
|
||||
*/
|
||||
addOpenSearchDataSource(id: string, domain: IDomain, options?: AppSyncDataSourceOptions): AppSyncOpenSearchDataSource;
|
||||
/**
|
||||
* Adds an IAM policy statement associated with this Event API to an IAM
|
||||
* principal's policy.
|
||||
* [disable-awslint:no-grants]
|
||||
*
|
||||
* @param grantee The principal
|
||||
* @param resources The set of resources to allow (i.e. ...:[region]:[accountId]:apis/EventApiId/...)
|
||||
* @param actions The actions that should be granted to the principal (i.e. appsync:EventPublish )
|
||||
*/
|
||||
grant(grantee: IGrantable, resources: AppSyncEventResource, ...actions: string[]): Grant;
|
||||
/**
|
||||
* Adds an IAM policy statement for EventPublish access to this EventApi to an IAM
|
||||
* principal's policy. This grants publish permission for all channels within the API.
|
||||
* [disable-awslint:no-grants]
|
||||
*
|
||||
* @param grantee The principal
|
||||
*/
|
||||
grantPublish(grantee: IGrantable): Grant;
|
||||
/**
|
||||
* Adds an IAM policy statement for EventSubscribe access to this EventApi to an IAM
|
||||
* principal's policy. This grants subscribe permission for all channels within the API.
|
||||
* [disable-awslint:no-grants]
|
||||
*
|
||||
* @param grantee The principal
|
||||
*/
|
||||
grantSubscribe(grantee: IGrantable): Grant;
|
||||
/**
|
||||
* Adds an IAM policy statement to publish and subscribe to this API for an IAM principal's policy.
|
||||
* This grants publish & subscribe permission for all channels within the API.
|
||||
* [disable-awslint:no-grants]
|
||||
*
|
||||
* @param grantee The principal
|
||||
*/
|
||||
grantPublishAndSubscribe(grantee: IGrantable): Grant;
|
||||
/**
|
||||
* Adds an IAM policy statement for EventConnect access to this EventApi to an IAM principal's policy.
|
||||
* [disable-awslint:no-grants]
|
||||
*
|
||||
* @param grantee The principal
|
||||
*/
|
||||
grantConnect(grantee: IGrantable): Grant;
|
||||
}
|
||||
/**
|
||||
* Properties for an AppSync Event API
|
||||
*/
|
||||
export interface EventApiProps {
|
||||
/**
|
||||
* the name of the Event API
|
||||
*/
|
||||
readonly apiName: string;
|
||||
/**
|
||||
* Optional authorization configuration
|
||||
*
|
||||
* @default - API Key authorization
|
||||
*/
|
||||
readonly authorizationConfig?: EventApiAuthConfig;
|
||||
/**
|
||||
* Logging configuration for this api
|
||||
*
|
||||
* @default - None
|
||||
*/
|
||||
readonly logConfig?: AppSyncLogConfig;
|
||||
/**
|
||||
* The owner contact information for an API resource.
|
||||
*
|
||||
* This field accepts any string input with a length of 0 - 256 characters.
|
||||
*
|
||||
* @default - No owner contact.
|
||||
*/
|
||||
readonly ownerContact?: string;
|
||||
/**
|
||||
* The domain name configuration for the Event API
|
||||
*
|
||||
* The Route 53 hosted zone and CName DNS record must be configured in addition to this setting to
|
||||
* enable custom domain URL
|
||||
*
|
||||
* @default - no domain name
|
||||
*/
|
||||
readonly domainName?: AppSyncDomainOptions;
|
||||
}
|
||||
/**
|
||||
* Attributes for Event API imports
|
||||
*/
|
||||
export interface EventApiAttributes {
|
||||
/**
|
||||
* the name of the Event API
|
||||
* @default - not needed to import API
|
||||
*/
|
||||
readonly apiName?: string;
|
||||
/**
|
||||
* an unique AWS AppSync Event API identifier
|
||||
* i.e. 'lxz775lwdrgcndgz3nurvac7oa'
|
||||
*/
|
||||
readonly apiId: string;
|
||||
/**
|
||||
* the ARN of the Event API
|
||||
* @default - constructed arn
|
||||
*/
|
||||
readonly apiArn?: string;
|
||||
/**
|
||||
* the domain name of the Api's HTTP endpoint.
|
||||
*/
|
||||
readonly httpDns: string;
|
||||
/**
|
||||
* the domain name of the Api's real-time endpoint.
|
||||
*/
|
||||
readonly realtimeDns: string;
|
||||
/**
|
||||
* The Authorization Types for this Event Api
|
||||
* @default - none, required to construct event rules from imported APIs
|
||||
*/
|
||||
readonly authProviderTypes?: AppSyncAuthorizationType[];
|
||||
}
|
||||
/**
|
||||
* An AppSync Event API
|
||||
*
|
||||
* @resource AWS::AppSync::Api
|
||||
*/
|
||||
export declare class EventApi extends EventApiBase {
|
||||
/**
|
||||
* Uniquely identifies this class.
|
||||
*/
|
||||
static readonly PROPERTY_INJECTION_ID: string;
|
||||
/**
|
||||
* Import a Event API through this function
|
||||
*
|
||||
* @param scope scope
|
||||
* @param id id
|
||||
* @param attrs Event API Attributes of an API
|
||||
*/
|
||||
static fromEventApiAttributes(scope: Construct, id: string, attrs: EventApiAttributes): IEventApi;
|
||||
/**
|
||||
* an unique AWS AppSync Event API identifier
|
||||
* i.e. 'lxz775lwdrgcndgz3nurvac7oa'
|
||||
*/
|
||||
readonly apiId: string;
|
||||
/**
|
||||
* the ARN of the API
|
||||
*/
|
||||
readonly apiArn: string;
|
||||
/**
|
||||
* the domain name of the Api's HTTP endpoint.
|
||||
*/
|
||||
readonly httpDns: string;
|
||||
/**
|
||||
* the domain name of the Api's real-time endpoint.
|
||||
*/
|
||||
readonly realtimeDns: string;
|
||||
/**
|
||||
* The Authorization Types for this Event Api
|
||||
*/
|
||||
readonly authProviderTypes: AppSyncAuthorizationType[];
|
||||
/**
|
||||
* The connection auth modes for this Event Api
|
||||
*/
|
||||
readonly connectionModeTypes: AppSyncAuthorizationType[];
|
||||
/**
|
||||
* The default publish auth modes for this Event Api
|
||||
*/
|
||||
readonly defaultPublishModeTypes: AppSyncAuthorizationType[];
|
||||
/**
|
||||
* The default subscribe auth modes for this Event Api
|
||||
*/
|
||||
readonly defaultSubscribeModeTypes: AppSyncAuthorizationType[];
|
||||
/**
|
||||
* The configured API keys, if present.
|
||||
* The key of this object is an apiKey name (apiKeyConfig.name) if specified, `Default` otherwise.
|
||||
*
|
||||
* @default - no api key
|
||||
* @attribute ApiKeys
|
||||
*/
|
||||
readonly apiKeys: {
|
||||
[key: string]: CfnApiKey;
|
||||
};
|
||||
/**
|
||||
* the CloudWatch Log Group for this API
|
||||
*/
|
||||
readonly logGroup: ILogGroup;
|
||||
private api;
|
||||
private eventConfig;
|
||||
private domainNameResource?;
|
||||
constructor(scope: Construct, id: string, props: EventApiProps);
|
||||
/**
|
||||
* Validate Event API configuration
|
||||
*/
|
||||
private validateEventApiConfiguration;
|
||||
/**
|
||||
* Validate ownerContact property
|
||||
*/
|
||||
private validateOwnerContact;
|
||||
private setupLogConfig;
|
||||
private setupAuthProviderTypes;
|
||||
private mapAuthorizationProviders;
|
||||
private mapAuthorizationConfig;
|
||||
private validateAuthorizationProps;
|
||||
private validateAuthorizationConfig;
|
||||
/**
|
||||
* The AppSyncDomainName of the associated custom domain
|
||||
*/
|
||||
get appSyncDomainName(): string;
|
||||
/**
|
||||
* The HTTP Endpoint of the associated custom domain
|
||||
*/
|
||||
get customHttpEndpoint(): string;
|
||||
/**
|
||||
* The Realtime Endpoint of the associated custom domain
|
||||
*/
|
||||
get customRealtimeEndpoint(): string;
|
||||
}
|
||||
Reference in New Issue
Block a user