import { ResourceBase, ResourceTag } from '../resource'; import { Value, List } from '../dataTypes'; export declare class NodeToNodeEncryptionOptions { Enabled?: Value; constructor(properties: NodeToNodeEncryptionOptions); } export declare class ElasticsearchClusterConfig { DedicatedMasterCount?: Value; DedicatedMasterEnabled?: Value; DedicatedMasterType?: Value; InstanceCount?: Value; InstanceType?: Value; ZoneAwarenessEnabled?: Value; constructor(properties: ElasticsearchClusterConfig); } export declare class SnapshotOptions { AutomatedSnapshotStartHour?: Value; constructor(properties: SnapshotOptions); } export declare class VPCOptions { SecurityGroupIds?: List>; SubnetIds?: List>; constructor(properties: VPCOptions); } export declare class EBSOptions { EBSEnabled?: Value; Iops?: Value; VolumeSize?: Value; VolumeType?: Value; constructor(properties: EBSOptions); } export declare class EncryptionAtRestOptions { Enabled?: Value; KmsKeyId?: Value; constructor(properties: EncryptionAtRestOptions); } export interface DomainProperties { AccessPolicies?: { [key: string]: any; }; AdvancedOptions?: { [key: string]: Value; }; DomainName?: Value; EBSOptions?: EBSOptions; ElasticsearchClusterConfig?: ElasticsearchClusterConfig; ElasticsearchVersion?: Value; EncryptionAtRestOptions?: EncryptionAtRestOptions; NodeToNodeEncryptionOptions?: NodeToNodeEncryptionOptions; SnapshotOptions?: SnapshotOptions; Tags?: List; VPCOptions?: VPCOptions; } export default class Domain extends ResourceBase { static NodeToNodeEncryptionOptions: typeof NodeToNodeEncryptionOptions; static ElasticsearchClusterConfig: typeof ElasticsearchClusterConfig; static SnapshotOptions: typeof SnapshotOptions; static VPCOptions: typeof VPCOptions; static EBSOptions: typeof EBSOptions; static EncryptionAtRestOptions: typeof EncryptionAtRestOptions; constructor(properties?: DomainProperties); }