import { Initializer } from '#common/initializer';
import { Expression, ExpressionOrLiteral } from '#csharp/code-dom/expression';
import { CaseStatement } from '#csharp/code-dom/statements/case';
import { Statement } from '#csharp/code-dom/statements/statement';
export declare type OneOrMoreCases = (() => Iterable<CaseStatement>) | Iterable<CaseStatement> | CaseStatement;
export declare function Switch(expression: ExpressionOrLiteral, cases: OneOrMoreCases, objectInitializer?: Partial<SwitchStatement>): SwitchStatement;
export declare class SwitchStatement extends Initializer implements Statement {
    protected expression: Expression;
    protected caseStatements: CaseStatement[];
    readonly implementation: string;
    constructor(expression: Expression, cases: OneOrMoreCases, objectInitializer?: Partial<SwitchStatement>);
    add(cases: OneOrMoreCases): void;
}
//# sourceMappingURL=switch.d.ts.map