import * as core from "@terrascript/core";
export interface ExpirationArgs extends core.SchemaArgs {
    date?: string | core.StringOut;
    days?: number | core.NumberOut;
    expiredObjectDeleteMarker?: boolean | core.BooleanOut;
}
export declare class Expiration extends core.Schema<ExpirationArgs> {
    date?: string | core.StringOut;
    days?: number | core.NumberOut;
    expiredObjectDeleteMarker?: boolean | core.BooleanOut;
}
export interface FilterArgs extends core.SchemaArgs {
    prefix?: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
}
export declare class Filter extends core.Schema<FilterArgs> {
    prefix?: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
}
export interface AbortIncompleteMultipartUploadArgs extends core.SchemaArgs {
    daysAfterInitiation: number | core.NumberOut;
}
export declare class AbortIncompleteMultipartUpload extends core.Schema<AbortIncompleteMultipartUploadArgs> {
    daysAfterInitiation: number | core.NumberOut;
}
export interface RuleArgs extends core.SchemaArgs {
    abortIncompleteMultipartUpload?: AbortIncompleteMultipartUpload;
    expiration?: Expiration;
    filter?: Filter;
    id: string | core.StringOut;
    status?: string | core.StringOut;
}
export declare class Rule extends core.Schema<RuleArgs> {
    abortIncompleteMultipartUpload?: AbortIncompleteMultipartUpload;
    expiration?: Expiration;
    filter?: Filter;
    id: string | core.StringOut;
    status?: string | core.StringOut;
}
export interface BucketLifecycleConfigurationArgs extends core.ResourceArgs {
    bucket: string | core.StringOut;
    rule: core.Array<Rule> | core.ArrayOut<Rule>;
}
export declare class BucketLifecycleConfiguration extends core.Resource<BucketLifecycleConfigurationArgs> {
    bucket: string | core.StringOut;
    id: string | core.StringOut;
    rule: core.Array<Rule> | core.ArrayOut<Rule>;
    constructor(name: string, args?: BucketLifecycleConfigurationArgs);
    getNamespace(): string;
}
//# sourceMappingURL=bucket_lifecycle_configuration.d.ts.map