import { ActiveEffect, EffectStatTarget } from '../Effects/types'; import { Stance, Combatant } from './types'; import { BaseStats, DerivedStats, NonCombatStats } from '../Character/types'; export declare function getDotAmplificationByEffect(effects: ActiveEffect[]): Map; export interface ActiveDotEntry { effectId: string; label: string; baseAmount: number; amount: number; multiplier: number; } export declare function getActiveDotTotal(effects: ActiveEffect[]): { perEffect: ActiveDotEntry[]; total: number; }; export interface ActiveDotAmplification { targetEffectId: string; multiplier: number; interactionId: string; comboName: string; } export declare function getActiveDotAmplifications(effects: ActiveEffect[]): ActiveDotAmplification[]; export interface AggregatedEffectModifiers { statFlat: Map; statMultBonus: Map; defenseDelta: number; advantageGrants: Set; advantageDenies: Set; skipTurn: boolean; forcedStance: Stance | null; blockedStances: Set; dotStart: number; dotEnd: number; healthRegen: number; healthDrain: number; } export declare function getActiveEffectModifiers(effects: ActiveEffect[]): AggregatedEffectModifiers; export interface EffectiveStats { baseStats: BaseStats; derivedStats: DerivedStats; nonCombatStats: NonCombatStats | null; defenseDelta: number; } export declare function getEffectiveStats(combatant: Combatant): EffectiveStats; export declare function canAct(effects: ActiveEffect[], requestedStance?: Stance | null): { canAct: boolean; resolvedStance: Stance | null; reason: string | null; }; //# sourceMappingURL=effect-modifiers.d.ts.map