Skip to content

Instantly share code, notes, and snippets.

@cfanoulis
Created February 3, 2020 13:37
Show Gist options
  • Save cfanoulis/561898427b520f81a32350137472fb4a to your computer and use it in GitHub Desktop.
Save cfanoulis/561898427b520f81a32350137472fb4a to your computer and use it in GitHub Desktop.
doctypes klasa
export interface Root {
meta: Meta;
custom: Custom;
classes: Class[];
typedefs: Typedef[];
externals: External[];
}
export interface Meta {
generator: string;
format: number;
}
export interface Custom {
"Getting Started": GettingStarted;
"Piece Basics": PieceBasics;
"Advanced Commands": AdvancedCommands;
"Other Subjects": OtherSubjects;
"Building Your Bot": BuildingYourBot;
}
export interface GettingStarted {
name: string;
files: Files;
}
export interface Files {
GettingStarted: GettingStarted2;
UnderstandingPermissionLevels: UnderstandingPermissionLevels;
SettingsGuide: SettingsGuide;
UnderstandingUsageStrings: UnderstandingUsageStrings;
faq: Faq;
}
export interface GettingStarted2 {
name: string;
type: string;
content: string;
path: string;
}
export interface UnderstandingPermissionLevels {
name: string;
type: string;
content: string;
path: string;
}
export interface SettingsGuide {
name: string;
type: string;
content: string;
path: string;
}
export interface UnderstandingUsageStrings {
name: string;
type: string;
content: string;
path: string;
}
export interface Faq {
name: string;
type: string;
content: string;
path: string;
}
export interface PieceBasics {
name: string;
files: Files2;
}
export interface Files2 {
CreatingArguments: CreatingArguments;
CreatingCommands: CreatingCommands;
CreatingEvents: CreatingEvents;
CreatingExtendables: CreatingExtendables;
CreatingFinalizers: CreatingFinalizers;
CreatingInhibitors: CreatingInhibitors;
CreatingLanguages: CreatingLanguages;
CreatingMonitors: CreatingMonitors;
CreatingProviders: CreatingProviders;
CreatingSerializers: CreatingSerializers;
CreatingSQLProviders: CreatingSqlproviders;
CreatingTasks: CreatingTasks;
}
export interface CreatingArguments {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingCommands {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingEvents {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingExtendables {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingFinalizers {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingInhibitors {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingLanguages {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingMonitors {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingProviders {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingSerializers {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingSqlproviders {
name: string;
type: string;
content: string;
path: string;
}
export interface CreatingTasks {
name: string;
type: string;
content: string;
path: string;
}
export interface AdvancedCommands {
name: string;
files: Files3;
}
export interface Files3 {
CommandsArguments: CommandsArguments;
CommandsSubcommands: CommandsSubcommands;
CommandsCustomResponses: CommandsCustomResponses;
CommandsCustomResolvers: CommandsCustomResolvers;
}
export interface CommandsArguments {
name: string;
type: string;
content: string;
path: string;
}
export interface CommandsSubcommands {
name: string;
type: string;
content: string;
path: string;
}
export interface CommandsCustomResponses {
name: string;
type: string;
content: string;
path: string;
}
export interface CommandsCustomResolvers {
name: string;
type: string;
content: string;
path: string;
}
export interface OtherSubjects {
name: string;
files: Files4;
}
export interface Files4 {
PieceStores: PieceStores;
RichDisplay: RichDisplay;
RichMenu: RichMenu;
Plugins: Plugins;
}
export interface PieceStores {
name: string;
type: string;
content: string;
path: string;
}
export interface RichDisplay {
name: string;
type: string;
content: string;
path: string;
}
export interface RichMenu {
name: string;
type: string;
content: string;
path: string;
}
export interface Plugins {
name: string;
type: string;
content: string;
path: string;
}
export interface BuildingYourBot {
name: string;
files: Files5;
}
export interface Files5 {
CreatingPointsSystems: CreatingPointsSystems;
}
export interface CreatingPointsSystems {
name: string;
type: string;
content: string;
path: string;
}
export interface Class {
name: string;
description?: string;
extends?: string[];
construct?: Construct;
props?: Prop[];
methods: Method[];
events?: Event[];
meta: Meta5;
see?: string[];
access?: string;
}
export interface Construct {
name: string;
description?: string;
params?: Param[];
}
export interface Param {
name: string;
description: string;
type: any[][];
optional?: boolean;
default: any;
variable?: boolean;
}
export interface Prop {
name: string;
description?: string;
readonly?: boolean;
type: any[][];
meta: Meta2;
since?: string;
access?: string;
scope?: string;
see?: string[];
nullable?: boolean;
props?: Prop2[];
abstract?: boolean;
}
export interface Meta2 {
line: number;
file: string;
path: string;
}
export interface Prop2 {
name: string;
description: string;
type: string[][][];
}
export interface Method {
name: string;
description: string;
returns: any;
meta: Meta3;
since?: string;
async?: boolean;
access?: string;
params?: Param2[];
scope?: string;
see?: string[];
examples?: string[];
generator?: boolean;
inherits?: string;
inherited?: boolean;
yields?: string[][][];
abstract?: boolean;
}
export interface Meta3 {
line: number;
file: string;
path: string;
}
export interface Param2 {
name: string;
description: string;
type: any[][];
optional?: boolean;
default: any;
variable?: boolean;
nullable?: boolean;
}
export interface Event {
name: string;
description: string;
meta: Meta4;
since: string;
params?: Param3[];
}
export interface Meta4 {
line: number;
file: string;
path: string;
}
export interface Param3 {
name: string;
description: string;
type: string[][][];
nullable?: boolean;
}
export interface Meta5 {
line: number;
file: string;
path: string;
}
export interface Typedef {
name: string;
description?: string;
type: any[][];
meta: Meta6;
props?: Prop3[];
access?: string;
}
export interface Meta6 {
line: number;
file: string;
path: string;
}
export interface Prop3 {
name: string;
description: string;
type: any[][];
optional?: boolean;
default: any;
nullable?: boolean;
}
export interface External {
name: string;
see: string[];
meta: Meta7;
}
export interface Meta7 {
line: number;
file: string;
path: string;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment