import { ExpressionNode } from "../../../common-types";
import { FieldDefinition } from "../../../utils/fieldMaps";
import { AccessHandlerFn } from "../../BaseHandler";
/**
 * Specialized node type for empowering access
 */
interface EmpoweringExpressionNode extends ExpressionNode {
    field: FieldDefinition;
    nodeType: "empowering";
}
/**
 * Specialized node type for evoker access
 */
interface EvokerExpressionNode extends ExpressionNode {
    field: FieldDefinition;
    nodeType: "evoker";
}
/**
 * Specialized node type for release access
 */
interface ReleaseExpressionNode extends ExpressionNode {
    field: FieldDefinition;
    nodeType: "release";
}
/**
 * Handler for evoker access contexts
 * This handles access to evoker-specific properties
 */
declare const handleEvoker: AccessHandlerFn<EvokerExpressionNode>;
/**
 * Handler for empowering access contexts
 * This handles access to empowering spells for Evoker
 */
declare const handleEmpowering: AccessHandlerFn<EmpoweringExpressionNode>;
/**
 * Handler for release access contexts
 * This handles access to release-specific properties for Evoker
 */
declare const handleRelease: AccessHandlerFn<ReleaseExpressionNode>;
export { handleEmpowering, handleEvoker, handleRelease, type EmpoweringExpressionNode, type EvokerExpressionNode, type ReleaseExpressionNode, };
//# sourceMappingURL=EvokerHandler.d.ts.map