simc-ast-builder
Version:
Parser and AST generator for SimulationCraft files
53 lines • 1.81 kB
TypeScript
import { ExpressionNode } from "../../../common-types";
import { FieldDefinition } from "../../../utils/fieldMaps";
import { AccessHandlerFn } from "../../BaseHandler";
/**
* Specialized node type for shaman access
*/
interface ShamanExpressionNode extends ExpressionNode {
field: FieldDefinition;
nodeType: "shaman";
}
/**
* Handler for shaman access contexts
* This handles access to shaman-specific properties
*/
declare const handleShaman: AccessHandlerFn<ShamanExpressionNode>;
/**
* Specialized node type for totem access
*/
interface TotemExpressionNode extends ExpressionNode {
field: FieldDefinition;
nodeType: "totem";
totemName: string;
}
/**
* Handler for totem access contexts
* This handles access to totem properties for Shaman
*/
declare const handleTotem: AccessHandlerFn<TotemExpressionNode>;
/**
* Specialized node type for feral_spirit access
*/
interface FeralSpiritExpressionNode extends ExpressionNode {
field: FieldDefinition;
nodeType: "feral_spirit";
}
/**
* Handler for feral_spirit access contexts
* This handles access to feral spirit properties for Enhancement Shaman
*/
declare const handleFeralSpirit: AccessHandlerFn<FeralSpiritExpressionNode>;
/**
* Specialized node type for lightning_rod access
*/
interface LightningRodExpressionNode extends ExpressionNode {
nodeType: "lightning_rod";
}
/**
* Handler for lightning_rod access contexts
* This handles access to the lightning_rod property for Shaman
*/
declare const handleLightningRod: AccessHandlerFn<LightningRodExpressionNode>;
export { handleFeralSpirit, handleLightningRod, handleShaman, handleTotem, type FeralSpiritExpressionNode, type LightningRodExpressionNode, type ShamanExpressionNode, type TotemExpressionNode, };
//# sourceMappingURL=ShamanHandler.d.ts.map