@nolanrigo/cloudformation
Version:
TypeScript-based imperative way to define AWS CloudFormation templates
123 lines (122 loc) • 4.05 kB
TypeScript
import { ResourceBase } from "../../resource";
import { Value, List, MapOf } from "../../data-types";
export declare class BrokerLogs {
S3?: S3;
Firehose?: Firehose;
CloudWatchLogs?: CloudWatchLogs;
constructor(properties: BrokerLogs);
}
export declare class CloudWatchLogs {
LogGroup?: Value<string>;
Enabled: Value<boolean>;
constructor(properties: CloudWatchLogs);
}
export declare class Prometheus {
JmxExporter?: JmxExporter;
NodeExporter?: NodeExporter;
constructor(properties: Prometheus);
}
export declare class EncryptionAtRest {
DataVolumeKMSKeyId: Value<string>;
constructor(properties: EncryptionAtRest);
}
export declare class ConfigurationInfo {
Revision: Value<number>;
Arn: Value<string>;
constructor(properties: ConfigurationInfo);
}
export declare class Firehose {
DeliveryStream?: Value<string>;
Enabled: Value<boolean>;
constructor(properties: Firehose);
}
export declare class EncryptionInfo {
EncryptionAtRest?: EncryptionAtRest;
EncryptionInTransit?: EncryptionInTransit;
constructor(properties: EncryptionInfo);
}
export declare class StorageInfo {
EBSStorageInfo?: EBSStorageInfo;
constructor(properties: StorageInfo);
}
export declare class OpenMonitoring {
Prometheus: Prometheus;
constructor(properties: OpenMonitoring);
}
export declare class EncryptionInTransit {
ClientBroker?: Value<string>;
InCluster?: Value<boolean>;
constructor(properties: EncryptionInTransit);
}
export declare class EBSStorageInfo {
VolumeSize?: Value<number>;
constructor(properties: EBSStorageInfo);
}
export declare class LoggingInfo {
BrokerLogs: BrokerLogs;
constructor(properties: LoggingInfo);
}
export declare class BrokerNodeGroupInfo {
SecurityGroups?: List<Value<string>>;
ClientSubnets: List<Value<string>>;
StorageInfo?: StorageInfo;
BrokerAZDistribution?: Value<string>;
InstanceType: Value<string>;
constructor(properties: BrokerNodeGroupInfo);
}
export declare class JmxExporter {
EnabledInBroker: Value<boolean>;
constructor(properties: JmxExporter);
}
export declare class S3 {
Bucket?: Value<string>;
Enabled: Value<boolean>;
Prefix?: Value<string>;
constructor(properties: S3);
}
export declare class Tls {
CertificateAuthorityArnList?: List<Value<string>>;
constructor(properties: Tls);
}
export declare class ClientAuthentication {
Tls?: Tls;
constructor(properties: ClientAuthentication);
}
export declare class NodeExporter {
EnabledInBroker: Value<boolean>;
constructor(properties: NodeExporter);
}
export interface ClusterProperties {
ClientAuthentication?: ClientAuthentication;
ConfigurationInfo?: ConfigurationInfo;
ClusterName: Value<string>;
LoggingInfo?: LoggingInfo;
EncryptionInfo?: EncryptionInfo;
BrokerNodeGroupInfo: BrokerNodeGroupInfo;
OpenMonitoring?: OpenMonitoring;
KafkaVersion: Value<string>;
NumberOfBrokerNodes: Value<number>;
Tags?: MapOf<any>;
EnhancedMonitoring?: Value<string>;
}
export default class Inner_Cluster extends ResourceBase<ClusterProperties> {
static BrokerLogs: typeof BrokerLogs;
static CloudWatchLogs: typeof CloudWatchLogs;
static Prometheus: typeof Prometheus;
static EncryptionAtRest: typeof EncryptionAtRest;
static ConfigurationInfo: typeof ConfigurationInfo;
static Firehose: typeof Firehose;
static EncryptionInfo: typeof EncryptionInfo;
static StorageInfo: typeof StorageInfo;
static OpenMonitoring: typeof OpenMonitoring;
static EncryptionInTransit: typeof EncryptionInTransit;
static EBSStorageInfo: typeof EBSStorageInfo;
static LoggingInfo: typeof LoggingInfo;
static BrokerNodeGroupInfo: typeof BrokerNodeGroupInfo;
static JmxExporter: typeof JmxExporter;
static S3: typeof S3;
static Tls: typeof Tls;
static ClientAuthentication: typeof ClientAuthentication;
static NodeExporter: typeof NodeExporter;
constructor(properties: ClusterProperties);
}