import _ from 'lodash';
export const AKEventType = {
    test: 'test',
    authSignup: 'auth_signup',
    authForgotPassword: 'auth_forgot_password',
};
export class AKEvent {
    type;
    recipient;
    relatedId;
    jobDebounceMilliseconds;
    jobSingletonKey;
    shouldSendViaChannels() {
        return [];
    }
    static async fromEventData(_data, _userService) {
        throw Error(`${this.name}.fromEventData() not implemented`);
    }
    toEventData() {
        throw Error(`${this.constructor.name}.toEventData() not implemented`);
    }
    static get jobQueueName() {
        return _.kebabCase(this.name);
    }
    static preview() {
        throw Error(`${this.name}.preview() not implemented`);
    }
    async emailPayload() {
        return {};
    }
    async pushNotificationPayload() {
        return {};
    }
}
//# sourceMappingURL=event.js.map