import InstructionNode from "./InstructionNode.js";
import BaseNode from "../../../graph/BaseNode.js";
import { NodeBuilder, NodeTypeGuard } from "../../../graph/Node.js";
import { Switch } from "../../../../../../Joinpoints.js";
declare namespace SwitchNode {
    class Class<D extends Data = Data, S extends ScratchData = ScratchData> extends InstructionNode.Class<D, S> {
        get jp(): Switch;
    }
    class Builder extends InstructionNode.Builder implements NodeBuilder<Data, ScratchData> {
        constructor($jp: Switch);
        buildData(data: BaseNode.Data): Data;
        buildScratchData(scratchData: BaseNode.ScratchData): ScratchData;
    }
    const TypeGuard: NodeTypeGuard<Data, ScratchData>;
    interface Data extends InstructionNode.Data {
        instructionFlowNodeType: InstructionNode.Type.SWITCH;
    }
    interface ScratchData extends InstructionNode.ScratchData {
        $jp: Switch;
    }
}
export default SwitchNode;
//# sourceMappingURL=SwitchNode.d.ts.map