import * as core from "@terrascript/core";
export interface ClusterArgs extends core.ResourceArgs {
    allowMajorVersionUpgrade?: boolean | core.BooleanOut;
    applyImmediately?: boolean | core.BooleanOut;
    availabilityZones?: core.Array<string> | core.ArrayOut<core.StringOut>;
    backupRetentionPeriod?: number | core.NumberOut;
    clusterIdentifier?: string | core.StringOut;
    clusterIdentifierPrefix?: string | core.StringOut;
    copyTagsToSnapshot?: boolean | core.BooleanOut;
    deletionProtection?: boolean | core.BooleanOut;
    enableCloudwatchLogsExports?: core.Array<string> | core.ArrayOut<core.StringOut>;
    engine?: string | core.StringOut;
    engineVersion?: string | core.StringOut;
    finalSnapshotIdentifier?: string | core.StringOut;
    iamDatabaseAuthenticationEnabled?: boolean | core.BooleanOut;
    iamRoles?: core.Array<string> | core.ArrayOut<core.StringOut>;
    kmsKeyArn?: string | core.StringOut;
    neptuneClusterParameterGroupName?: string | core.StringOut;
    neptuneSubnetGroupName?: string | core.StringOut;
    port?: number | core.NumberOut;
    preferredBackupWindow?: string | core.StringOut;
    preferredMaintenanceWindow?: string | core.StringOut;
    replicationSourceIdentifier?: string | core.StringOut;
    skipFinalSnapshot?: boolean | core.BooleanOut;
    snapshotIdentifier?: string | core.StringOut;
    storageEncrypted?: boolean | core.BooleanOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    vpcSecurityGroupIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
}
export declare class Cluster extends core.Resource<ClusterArgs> {
    allowMajorVersionUpgrade?: boolean | core.BooleanOut;
    applyImmediately?: boolean | core.BooleanOut;
    arn: string | core.StringOut;
    availabilityZones?: core.Array<string> | core.ArrayOut<core.StringOut>;
    backupRetentionPeriod?: number | core.NumberOut;
    clusterIdentifier?: string | core.StringOut;
    clusterIdentifierPrefix?: string | core.StringOut;
    clusterMembers: core.Array<string> | core.ArrayOut<core.StringOut>;
    clusterResourceId: string | core.StringOut;
    copyTagsToSnapshot?: boolean | core.BooleanOut;
    deletionProtection?: boolean | core.BooleanOut;
    enableCloudwatchLogsExports?: core.Array<string> | core.ArrayOut<core.StringOut>;
    endpoint: string | core.StringOut;
    engine?: string | core.StringOut;
    engineVersion?: string | core.StringOut;
    finalSnapshotIdentifier?: string | core.StringOut;
    hostedZoneId: string | core.StringOut;
    iamDatabaseAuthenticationEnabled?: boolean | core.BooleanOut;
    iamRoles?: core.Array<string> | core.ArrayOut<core.StringOut>;
    id: string | core.StringOut;
    kmsKeyArn?: string | core.StringOut;
    neptuneClusterParameterGroupName?: string | core.StringOut;
    neptuneSubnetGroupName?: string | core.StringOut;
    port?: number | core.NumberOut;
    preferredBackupWindow?: string | core.StringOut;
    preferredMaintenanceWindow?: string | core.StringOut;
    readerEndpoint: string | core.StringOut;
    replicationSourceIdentifier?: string | core.StringOut;
    skipFinalSnapshot?: boolean | core.BooleanOut;
    snapshotIdentifier?: string | core.StringOut;
    storageEncrypted?: boolean | core.BooleanOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    vpcSecurityGroupIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    constructor(name: string, args?: ClusterArgs);
    getNamespace(): string;
}
//# sourceMappingURL=cluster.d.ts.map