3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-03-15 22:01:50 +00:00
zeppelin/backend/src/types.ts
2024-02-17 20:53:49 +01:00

38 lines
906 B
TypeScript

import { Knub } from "knub";
import z from "zod";
import { zSnowflake } from "./utils";
export const zZeppelinGuildConfig = z.strictObject({
// From BaseConfig
prefix: z.string().optional(),
levels: z.record(zSnowflake, z.number()).optional(),
plugins: z.record(z.string(), z.unknown()).optional(),
});
export type TZeppelinKnub = Knub;
/**
* Wrapper for the string type that indicates the text will be parsed as Markdown later
*/
export type TMarkdown = string;
export interface ZeppelinPluginInfo {
prettyName: string;
description?: TMarkdown;
usageGuide?: TMarkdown;
configurationGuide?: TMarkdown;
legacy?: boolean;
}
export interface CommandInfo {
description?: TMarkdown;
basicUsage?: TMarkdown;
examples?: TMarkdown;
usageGuide?: TMarkdown;
parameterDescriptions?: {
[key: string]: TMarkdown;
};
optionDescriptions?: {
[key: string]: TMarkdown;
};
}