3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-17 15:15:02 +00:00

Add types for all plugin configs and permissions. Update code to work with Knub 18.

This commit is contained in:
Dragory 2019-03-04 21:44:04 +02:00
parent 056cb9809f
commit 1c77269643
22 changed files with 415 additions and 225 deletions

View file

@ -1,4 +1,4 @@
import { decorators as d, waitForReply, utils as knubUtils } from "knub";
import { decorators as d, waitForReply, utils as knubUtils, IBasePluginConfig, IPluginOptions } from "knub";
import { ZeppelinPlugin } from "./ZeppelinPlugin";
import { GuildStarboards } from "../data/GuildStarboards";
import { GuildChannel, Message, TextChannel } from "eris";
@ -17,7 +17,11 @@ import moment from "moment-timezone";
import { GuildSavedMessages } from "../data/GuildSavedMessages";
import { SavedMessage } from "../data/entities/SavedMessage";
export class StarboardPlugin extends ZeppelinPlugin {
interface IStarboardPluginPermissions {
manage: boolean;
}
export class StarboardPlugin extends ZeppelinPlugin<IBasePluginConfig, IStarboardPluginPermissions> {
public static pluginName = "starboard";
protected starboards: GuildStarboards;
@ -25,8 +29,10 @@ export class StarboardPlugin extends ZeppelinPlugin {
private onMessageDeleteFn;
getDefaultOptions() {
getDefaultOptions(): IPluginOptions<IBasePluginConfig, IStarboardPluginPermissions> {
return {
config: {},
permissions: {
manage: false,
},