import { ResourceBase, ResourceTag as Inner_ResourceTag } from "../../resource";
import { Value, List } from "../../data-types";
export interface CacheClusterProperties {
    Port?: Value<number>;
    SnapshotRetentionLimit?: Value<number>;
    VpcSecurityGroupIds?: List<Value<string>>;
    Engine: Value<string>;
    PreferredMaintenanceWindow?: Value<string>;
    CacheParameterGroupName?: Value<string>;
    ClusterName?: Value<string>;
    PreferredAvailabilityZone?: Value<string>;
    AutoMinorVersionUpgrade?: Value<boolean>;
    CacheSecurityGroupNames?: List<Value<string>>;
    CacheSubnetGroupName?: Value<string>;
    PreferredAvailabilityZones?: List<Value<string>>;
    SnapshotName?: Value<string>;
    SnapshotWindow?: Value<string>;
    NumCacheNodes: Value<number>;
    EngineVersion?: Value<string>;
    Tags?: List<Inner_ResourceTag>;
    NotificationTopicArn?: Value<string>;
    SnapshotArns?: List<Value<string>>;
    AZMode?: Value<string>;
    CacheNodeType: Value<string>;
}
export default class Inner_CacheCluster extends ResourceBase<CacheClusterProperties> {
    constructor(properties: CacheClusterProperties);
}
