import * as core from "@terrascript/core";
export interface QueueArgs extends core.ResourceArgs {
    contentBasedDeduplication?: boolean | core.BooleanOut;
    deduplicationScope?: string | core.StringOut;
    delaySeconds?: number | core.NumberOut;
    fifoQueue?: boolean | core.BooleanOut;
    fifoThroughputLimit?: string | core.StringOut;
    kmsDataKeyReusePeriodSeconds?: number | core.NumberOut;
    kmsMasterKeyId?: string | core.StringOut;
    maxMessageSize?: number | core.NumberOut;
    messageRetentionSeconds?: number | core.NumberOut;
    name?: string | core.StringOut;
    namePrefix?: string | core.StringOut;
    policy?: string | core.StringOut;
    receiveWaitTimeSeconds?: number | core.NumberOut;
    redriveAllowPolicy?: string | core.StringOut;
    redrivePolicy?: string | core.StringOut;
    sqsManagedSseEnabled?: boolean | core.BooleanOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    visibilityTimeoutSeconds?: number | core.NumberOut;
}
export declare class Queue extends core.Resource<QueueArgs> {
    arn: string | core.StringOut;
    contentBasedDeduplication?: boolean | core.BooleanOut;
    deduplicationScope?: string | core.StringOut;
    delaySeconds?: number | core.NumberOut;
    fifoQueue?: boolean | core.BooleanOut;
    fifoThroughputLimit?: string | core.StringOut;
    id: string | core.StringOut;
    kmsDataKeyReusePeriodSeconds?: number | core.NumberOut;
    kmsMasterKeyId?: string | core.StringOut;
    maxMessageSize?: number | core.NumberOut;
    messageRetentionSeconds?: number | core.NumberOut;
    name?: string | core.StringOut;
    namePrefix?: string | core.StringOut;
    policy?: string | core.StringOut;
    receiveWaitTimeSeconds?: number | core.NumberOut;
    redriveAllowPolicy?: string | core.StringOut;
    redrivePolicy?: string | core.StringOut;
    sqsManagedSseEnabled?: boolean | core.BooleanOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    url: string | core.StringOut;
    visibilityTimeoutSeconds?: number | core.NumberOut;
    constructor(name: string, args?: QueueArgs);
    getNamespace(): string;
}
//# sourceMappingURL=queue.d.ts.map