import { PluginEvent } from '@posthog/plugin-scaffold'; import { StatsD } from 'hot-shots'; import { Action, Element, Person, PropertyOperator } from '../../types'; import { DB } from '../../utils/db/db'; import { ActionManager } from './action-manager'; export declare function castingCompare(a: any, b: any, operator: PropertyOperator.Exact | PropertyOperator.IsNot | PropertyOperator.LessThan | PropertyOperator.GreaterThan): boolean; export declare class ActionMatcher { private db; private actionManager; private statsd; constructor(db: DB, actionManager: ActionManager, statsd?: StatsD); match(event: PluginEvent, person?: Person, elements?: Element[]): Promise; checkAction(event: PluginEvent, elements: Element[] | undefined, person: Person | undefined, action: Action): Promise; private checkStep; private checkStepUrl; private checkStepElement; private checkStepEvent; private checkStepFilters; private checkEventAgainstFilter; private checkEventAgainstEventFilter; private checkEventAgainstPersonFilter; private checkEventAgainstElementFilter; private checkEventAgainstCohortFilter; private checkPropertiesAgainstFilter; checkElementsAgainstSelector(elements: Element[], selector: string, escapeSlashes?: boolean): boolean; private checkElementAgainstSelectorPartRequirements; }