import { RouterVars, TriggerObj } from '@showbridge/types';
import Action from '../actions/action.js';
import { Message } from '../messages/index.js';
declare class Trigger<T extends Object> {
    private obj;
    actions: Action<unknown>[];
    subTriggers: Trigger<unknown>[];
    constructor(triggerObj: TriggerObj<T>);
    loadActions(): void;
    loadSubTriggers(): void;
    test(msg: Message, vars: RouterVars): boolean;
    shouldFire(msg: Message, vars: RouterVars): boolean;
    get type(): string;
    get params(): T;
    get enabled(): boolean;
    get comment(): string;
    resolveTemplatedParams(data: any): T;
    toJSON(): any;
}
export default Trigger;
