import { ScheduledTask } from '@sapphire/plugin-scheduled-tasks';export class RememberTask extends ScheduledTask { public async run (payload: unknown) { this.container.logger.info("i ran", payload); }}declare module '@sapphire/plugin-scheduled-tasks' { interface ScheduledTasks { rememberMe: never; }}
import { ScheduledTask } from '@sapphire/plugin-scheduled-tasks';export class RememberTask extends ScheduledTask { public async run (payload: unknown) { this.container.logger.info("i ran", payload); }}declare module '@sapphire/plugin-scheduled-tasks' { interface ScheduledTasks { rememberMe: never; }}
I get this error
[ScheduledTaskPlugin] There was no task found for "rememberMe"
[ScheduledTaskPlugin] There was no task found for "rememberMe"
What am I doing wrong?
Solution
Then the name is RememberTask. By default sapphire will use the file name as the name of the piece. Either you have to specify a different name in the constructor or rename the file. The module augmentation that you do at the bottom is typescript only, and doesn't affect runtime.