import { ResourceBase, ResourceTag as Inner_ResourceTag } from "../../resource";
import { Value, List } from "../../data-types";
export declare class LoggingProperties {
    BucketName: Value<string>;
    S3KeyPrefix?: Value<string>;
    constructor(properties: LoggingProperties);
}
export interface ClusterProperties {
    Port?: Value<number>;
    VpcSecurityGroupIds?: List<Value<string>>;
    PreferredMaintenanceWindow?: Value<string>;
    ClusterIdentifier?: Value<string>;
    Encrypted?: Value<boolean>;
    AvailabilityZone?: Value<string>;
    IamRoles?: List<Value<string>>;
    MasterUserPassword: Value<string>;
    DBName: Value<string>;
    KmsKeyId?: Value<string>;
    AutomatedSnapshotRetentionPeriod?: Value<number>;
    PubliclyAccessible?: Value<boolean>;
    SnapshotIdentifier?: Value<string>;
    AllowVersionUpgrade?: Value<boolean>;
    ClusterSecurityGroups?: List<Value<string>>;
    NumberOfNodes?: Value<number>;
    LoggingProperties?: LoggingProperties;
    HsmClientCertificateIdentifier?: Value<string>;
    ClusterSubnetGroupName?: Value<string>;
    ClusterType: Value<string>;
    MasterUsername: Value<string>;
    Tags?: List<Inner_ResourceTag>;
    OwnerAccount?: Value<string>;
    ClusterParameterGroupName?: Value<string>;
    NodeType: Value<string>;
    ElasticIp?: Value<string>;
    HsmConfigurationIdentifier?: Value<string>;
    ClusterVersion?: Value<string>;
    SnapshotClusterIdentifier?: Value<string>;
}
export default class Inner_Cluster extends ResourceBase<ClusterProperties> {
    static LoggingProperties: typeof LoggingProperties;
    constructor(properties: ClusterProperties);
}
