import * as SDK from 'aws-sdk'; import { AWS } from "./AWS"; import { CUR } from "./CUR"; export declare namespace S3 { class Bucket extends AWS.Resource { session: AWS.RemoteSession; creationDate: Date; private _lifCycleConfiguration; private _size; static new(session: AWS.Session, name?: string, creationDate?: Date): Bucket; private constructor(); protected updateChildren(): Promise; hasId(): boolean; hasCreationDate(): boolean; private getLifeCycleConfiguration; lifeCycleConfiguration(): Promise; size(): Promise; } class Buckets extends Array { private static listBuckets; static fetch(session: AWS.RemoteSession): Promise; static costs(account: string, curSession: AWS.Session, catalog: string, database: string, table: string, outputLocation: string, year: number): Promise; } namespace Bucket { const type = "S3.Bucket"; type Size = { bytes: number; objects: number; }; class LifecycleConfiguration extends AWS.Resource { private _bucket; rules: Bucket.LifecycleConfiguration.Rule[]; error: string; static new(session: AWS.Session, bucket: Bucket, rules?: Bucket.LifecycleConfiguration.Rule[], error?: string): LifecycleConfiguration; private constructor(); get bucket(): Bucket; protected updateChildren(): Promise; hasError(): boolean; deletesIncompleteMultipartUploads(): boolean; deletesNonCurrentObjectVersions(): boolean; } namespace LifecycleConfiguration { const type = "S3.Bucket.LifeCycleConfiguration"; type Rule = SDK.S3.Types.LifecycleRule; } } }