aXises/fortniteBot

View on GitHub
src/action/Trigger.ts

Summary

Maintainability
A
0 mins
Test Coverage
import * as Discord from "discord.js";
import Action from "action/Action";
import CoreState from "state/CoreState";

export default class Trigger extends Action {
    /**
     * @classdesc Base trigger class, invokes an FortniteBotAction if conditions are met.
     * @param trigger - A trigger to invoke, returns true if conditions are met.
     */
    public constructor(trigger: (state: CoreState<Discord.Message>) => Promise<boolean>) {
        super(trigger);
    }

    /**
     * Attempt to execute the trigger.
     * @param state A Handle for the trigger to bind to.
     * @returns true if the command was successfully executed.
     */
    public async execute(state: CoreState<Discord.Message>): Promise<boolean> {
        return super.execute(state, []);
    }
}