import * as core from "@terrascript/core";
export interface IamArgs extends core.SchemaArgs {
    enabled: boolean | core.BooleanOut;
}
export declare class Iam extends core.Schema<IamArgs> {
    enabled: boolean | core.BooleanOut;
}
export interface SaslArgs extends core.SchemaArgs {
    iam: Iam;
}
export declare class Sasl extends core.Schema<SaslArgs> {
    iam: Iam;
}
export interface ClientAuthenticationArgs extends core.SchemaArgs {
    sasl: Sasl;
}
export declare class ClientAuthentication extends core.Schema<ClientAuthenticationArgs> {
    sasl: Sasl;
}
export interface VpcConfigArgs extends core.SchemaArgs {
    securityGroupIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    subnetIds: core.Array<string> | core.ArrayOut<core.StringOut>;
}
export declare class VpcConfig extends core.Schema<VpcConfigArgs> {
    securityGroupIds?: core.Array<string> | core.ArrayOut<core.StringOut>;
    subnetIds: core.Array<string> | core.ArrayOut<core.StringOut>;
}
export interface MskServerlessClusterArgs extends core.ResourceArgs {
    clientAuthentication: ClientAuthentication;
    clusterName: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    vpcConfig: core.Array<VpcConfig> | core.ArrayOut<VpcConfig>;
}
export declare class MskServerlessCluster extends core.Resource<MskServerlessClusterArgs> {
    arn: string | core.StringOut;
    clientAuthentication: ClientAuthentication;
    clusterName: string | core.StringOut;
    id: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    vpcConfig: core.Array<VpcConfig> | core.ArrayOut<VpcConfig>;
    constructor(name: string, args?: MskServerlessClusterArgs);
    getNamespace(): string;
}
//# sourceMappingURL=msk_serverless_cluster.d.ts.map