import CNShell from "cn-shell";
import * as SQS from "./aws-sqs";
import * as SNS from "./aws-sns";
import * as DDB from "./aws-dynamodb";
import * as Secrets from "./aws-secret";
import * as Firehose from "./aws-firehose";
import * as S3 from "./aws-s3";
import * as SESv2 from "./aws-ses";
import * as Cognito from "./aws-cognito";
import AWS_SQS from "aws-sdk/clients/sqs";
import AWS_SNS from "aws-sdk/clients/sns";
import AWS_DDB from "aws-sdk/clients/dynamodb";
import AWS_SecretsManager from "aws-sdk/clients/secretsmanager";
import AWS_Firehose from "aws-sdk/clients/firehose";
import AWS_S3 from "aws-sdk/clients/s3";
import AWS_SESv2 from "aws-sdk/clients/sesv2";
import AWS_CongitoIdentityServiceProvider from "aws-sdk/clients/cognitoidentityserviceprovider";
declare class Utils extends CNShell {
  private _queues;
  private _topics;
  private _firehoseStreams;
  constructor(name: string);
  start(): Promise<boolean>;
  stop(): Promise<void>;
  healthCheck(): Promise<boolean>;
  addSqsSender(name: string, opts: SQS.SenderOpts): SQS.Sender;
  addSqsReceiver(name: string, opts: SQS.ReceiverOpts): SQS.Receiver;
  addSnsTopic(name: string, opts: SNS.Opts): SNS.Topic;
  addFirehoseStream(name: string, opts: Firehose.Opts): Firehose.FirehoseStream;
  startRecording(playbackFile: string): void;
  startRecordingSqsReceivers(playbackFile: string): void;
  startRecordingSqsSenders(playbackFile: string): void;
  startRecordingSns(playbackFile: string): void;
  startRecordingFirehoseStreams(playbackFile: string): void;
  stopRecording(): void;
  stopRecordingSqsReceivers(): void;
  stopRecordingSqsSenders(): void;
  stopRecordingSns(): void;
  stopRecordingFirehoseStreams(): void;
  replayRecordings(playbackFile: string): void;
}
export {
  Utils,
  SQS,
  SNS,
  DDB,
  Secrets,
  Firehose,
  S3,
  SESv2,
  Cognito,
  AWS_SQS,
  AWS_SNS,
  AWS_DDB,
  AWS_SecretsManager,
  AWS_Firehose,
  AWS_S3,
  AWS_SESv2,
  AWS_CongitoIdentityServiceProvider,
};
