2024-02-17 18:16:53 +01:00
|
|
|
import { Knub } from "knub";
|
2024-01-14 14:25:42 +00:00
|
|
|
import z from "zod";
|
|
|
|
import { zSnowflake } from "./utils";
|
2020-01-12 13:37:43 +02:00
|
|
|
|
2024-01-14 14:25:42 +00:00
|
|
|
export const zZeppelinGuildConfig = z.strictObject({
|
2020-08-10 00:24:06 +03:00
|
|
|
// From BaseConfig
|
2024-01-14 14:25:42 +00:00
|
|
|
prefix: z.string().optional(),
|
|
|
|
levels: z.record(zSnowflake, z.number()).optional(),
|
|
|
|
plugins: z.record(z.string(), z.unknown()).optional(),
|
2020-08-10 00:24:06 +03:00
|
|
|
});
|
|
|
|
|
2023-04-01 12:58:17 +01:00
|
|
|
export type TZeppelinKnub = Knub;
|
2020-07-05 05:00:54 +03:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Wrapper for the string type that indicates the text will be parsed as Markdown later
|
|
|
|
*/
|
2020-07-22 23:11:42 +03:00
|
|
|
export type TMarkdown = string;
|
2020-07-05 05:00:54 +03:00
|
|
|
|
|
|
|
export interface ZeppelinPluginInfo {
|
|
|
|
prettyName: string;
|
|
|
|
description?: TMarkdown;
|
|
|
|
usageGuide?: TMarkdown;
|
|
|
|
configurationGuide?: TMarkdown;
|
2021-05-07 21:21:51 +01:00
|
|
|
legacy?: boolean;
|
2020-07-05 05:00:54 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface CommandInfo {
|
|
|
|
description?: TMarkdown;
|
|
|
|
basicUsage?: TMarkdown;
|
|
|
|
examples?: TMarkdown;
|
|
|
|
usageGuide?: TMarkdown;
|
|
|
|
parameterDescriptions?: {
|
|
|
|
[key: string]: TMarkdown;
|
|
|
|
};
|
|
|
|
optionDescriptions?: {
|
|
|
|
[key: string]: TMarkdown;
|
|
|
|
};
|
|
|
|
}
|