import { CloudWatchLogsClient, ExportTask, LogGroup } from '@aws-sdk/client-cloudwatch-logs'; import { Brand, EpochMS } from '@paradoxical-io/types'; import { Monitoring } from '../monitoring'; export type CloudwatchExportTaskId = Brand<'TaskId', string>; export declare class CloudwatchManager { private readonly logger; constructor({ cloudwatch, monitoring, }?: { cloudwatch?: CloudWatchLogsClient; monitoring?: Monitoring; }); private readonly cloudwatch; /** * Create a new task to export a log group to an S3 bucket. * @param s3Bucket bucket to store log groups to * @param s3PathPrefix path prefix to include in destination. can be utilized to create a filepath. * @param logGroupName name of the log group in cloudwatch to export * @param from starting timestamp of logs to include * @param to ending timestamp of logs to include */ createExportTask({ s3Bucket, s3PathPrefix, logGroupName, from, to, }: { s3Bucket: string; s3PathPrefix?: string; logGroupName: string; from: EpochMS; to: EpochMS; }): Promise; /** * Get details about a known cloudwatch export task * @param taskId */ describeExportTask(taskId: CloudwatchExportTaskId): Promise; getLogGroups(): Promise; } //# sourceMappingURL=cloudwatch.d.ts.map