import { App, StackProps } from 'aws-cdk-lib'; import { WebService } from '../../packages/web-service'; import { WebServiceCommmon } from '../../packages/web-common'; import { QueueService } from '../../packages/queue-service'; import { Database } from '../../packages/database'; import { Network } from '../../packages/network'; import { Cluster } from '../../packages/cluster'; import { TaskEnvironment } from '../../utilities/environment'; import ConvertivBaseStack from '../../stacks/base-stack'; import { ISecret } from 'aws-cdk-lib/aws-secretsmanager'; import { WebAppServiceSettings } from './settings'; import { Secret as ECSSecret } from 'aws-cdk-lib/aws-ecs'; export declare class ConvertivWebServiceStack extends ConvertivBaseStack { scope: App; name: string; env: string; settings: WebAppServiceSettings; secret: ISecret; taskEnvironment: TaskEnvironment; common: WebServiceCommmon; network: Network; cluster: Cluster; webService?: WebService; queueService?: QueueService; database?: Database; /** * Validate environment vars * @param app Instance of the ConvertivWebServiceStack * @param settings The application settings * @param secret The secrets object * @returns */ validateEnvVars(app: ConvertivWebServiceStack, settings: WebAppServiceSettings, secret: ISecret): TaskEnvironment; validateEnvSecrets(app: ConvertivWebServiceStack, settings: WebAppServiceSettings, secret: ISecret): { [key: string]: ECSSecret; }; /** * Construct the Web application stack * * @param app An instance of the CDK App * @param id A string that defines the app name * @param settings The settings for the application * @param props The stack properties defining stack metadata (region, tags, account) */ constructor(app: App, id: string, settings: WebAppServiceSettings, props?: StackProps); }