mirror of
https://github.com/sern-handler/sern-community
synced 2026-06-28 02:32:19 +00:00
some doc parsing progress
This commit is contained in:
@@ -1,9 +0,0 @@
|
||||
import { eventModule, EventType } from '@sern/handler';
|
||||
|
||||
export default eventModule({
|
||||
type: EventType.Sern,
|
||||
name: 'module.register',
|
||||
execute(args) {
|
||||
console.log(args);
|
||||
}
|
||||
})
|
||||
11
src/events/module.register.ts
Normal file
11
src/events/module.register.ts
Normal file
@@ -0,0 +1,11 @@
|
||||
import { eventModule, EventType, Payload, PayloadType } from '@sern/handler';
|
||||
|
||||
export default eventModule({
|
||||
type: EventType.Sern,
|
||||
name: 'module.register',
|
||||
execute(args : Payload) {
|
||||
if(args.type === PayloadType.Success) {
|
||||
console.log(`~ ${args.module.name} sucessfully registered`)
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -1,35 +1,40 @@
|
||||
import TrieSearch from "trie-search";
|
||||
import type TrieSearch from "trie-search";
|
||||
import docs from '../../docs.json'
|
||||
import type { DocsChild, TentacledKindString } from "../../typings/docs";
|
||||
|
||||
|
||||
/**
|
||||
* Not bothering typing this json file
|
||||
*/
|
||||
export default class DocHandler {
|
||||
private __DocTrie : TrieSearch<unknown, unknown> | null = null;
|
||||
|
||||
private get pairs() {
|
||||
const keys = Object.keys(docs);
|
||||
const output = [];
|
||||
while(keys.length !== 0) {
|
||||
const cur = keys.pop()!;
|
||||
const val = docs[cur as keyof typeof docs];
|
||||
output.push({ key : cur, value : val });
|
||||
private __DocTries : TrieSearch<unknown, unknown>[] = [];
|
||||
private sectionTitleChildPairs : { name : string, node : DocsChild }[] = []
|
||||
private sectionsOnly : string[] = []
|
||||
get DocTries() {
|
||||
return this.__DocTries;
|
||||
}
|
||||
|
||||
private transformSections() {
|
||||
for(const section of docs.groups) {
|
||||
if(section.title === 'Sern') {
|
||||
//assumed that first element is Sern namespace. This helps speed up processing nodes
|
||||
this.sectionTitleChildPairs.push({ name : "Sern", node : docs.children.shift() as DocsChild });
|
||||
} else {
|
||||
const sectionChildNodes = section.children.map(id => {
|
||||
const node = docs.children.find(c => c.id === id)! as DocsChild;
|
||||
return ({
|
||||
name : section.title,
|
||||
node
|
||||
})
|
||||
});
|
||||
this.sectionsOnly.push(section.title)
|
||||
this.sectionTitleChildPairs.push(...sectionChildNodes);
|
||||
}
|
||||
}
|
||||
return output;
|
||||
}
|
||||
|
||||
get DocTrie() {
|
||||
return this.__DocTrie;
|
||||
}
|
||||
|
||||
|
||||
|
||||
setup() {
|
||||
|
||||
this.__DocTrie = new TrieSearch([
|
||||
'key'
|
||||
]);
|
||||
this.__DocTrie.addAll(this.pairs);
|
||||
// console.log(this.pairs)
|
||||
console.log(this.__DocTrie.search('sources'))
|
||||
this.transformSections();
|
||||
console.log(this.sectionTitleChildPairs)
|
||||
}
|
||||
|
||||
}
|
||||
4
typings/TrieSearch.d.ts
vendored
4
typings/TrieSearch.d.ts
vendored
@@ -46,8 +46,8 @@ declare module 'trie-search' {
|
||||
clearCache(): void
|
||||
|
||||
cleanCache(): void
|
||||
|
||||
addFromObject(obj: T, valueField: string): void
|
||||
|
||||
addFromObject(obj: T, valueField?: string): void
|
||||
|
||||
map(key: string, value: T): void
|
||||
|
||||
|
||||
850
typings/docs.d.ts
vendored
Normal file
850
typings/docs.d.ts
vendored
Normal file
@@ -0,0 +1,850 @@
|
||||
export interface Docs {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: string;
|
||||
flags: GetSignatureFlags;
|
||||
originalName: string;
|
||||
children: DocsChild[];
|
||||
groups: Group[];
|
||||
sources: Source[];
|
||||
}
|
||||
|
||||
export interface DocsChild {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: TentacledKindString;
|
||||
flags: GetSignatureFlags;
|
||||
children?: PurpleChild[];
|
||||
groups?: Group[];
|
||||
sources: Source[];
|
||||
comment?: PurpleComment;
|
||||
extendedTypes?: ExtendedType[];
|
||||
type?: FriskyType;
|
||||
typeParameters?: ChildTypeParameter[];
|
||||
signatures?: DeclarationElement[];
|
||||
}
|
||||
|
||||
export interface PurpleChild {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: PurpleKindString;
|
||||
flags: PurpleFlags;
|
||||
sources: Source[];
|
||||
target?: number;
|
||||
comment?: GetSignatureComment;
|
||||
type?: AmbitiousType;
|
||||
defaultValue?: string;
|
||||
signatures?: PurpleSignature[];
|
||||
getSignature?: GetSignature;
|
||||
inheritedFrom?: InheritedFrom;
|
||||
overwrites?: InheritedFrom;
|
||||
}
|
||||
|
||||
export interface GetSignatureComment {
|
||||
summary: ContentElement[];
|
||||
}
|
||||
|
||||
export interface ContentElement {
|
||||
kind: Kind;
|
||||
text: string;
|
||||
}
|
||||
|
||||
export enum Kind {
|
||||
Code = "code",
|
||||
InlineTag = "inline-tag",
|
||||
Text = "text",
|
||||
}
|
||||
|
||||
export interface PurpleFlags {
|
||||
isConst?: boolean;
|
||||
isPrivate?: boolean;
|
||||
isPublic?: boolean;
|
||||
isStatic?: boolean;
|
||||
isExternal?: boolean;
|
||||
isReadonly?: boolean;
|
||||
isOptional?: boolean;
|
||||
}
|
||||
|
||||
export interface GetSignature {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: GetSignatureKindString;
|
||||
flags: GetSignatureFlags;
|
||||
type: ExtendedType;
|
||||
comment?: GetSignatureComment;
|
||||
}
|
||||
|
||||
export interface GetSignatureFlags {
|
||||
}
|
||||
|
||||
export enum GetSignatureKindString {
|
||||
GetSignature = "Get signature",
|
||||
}
|
||||
|
||||
export interface ExtendedType {
|
||||
type: TypeEnum;
|
||||
id?: number;
|
||||
typeArguments?: ExtendedTypeTypeArgument[];
|
||||
name: string;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
}
|
||||
|
||||
export enum Package {
|
||||
DiscordAPITypes = "discord-api-types",
|
||||
DiscordJS = "discord.js",
|
||||
TsResults = "ts-results",
|
||||
TypesNode = "@types/node",
|
||||
Typescript = "typescript",
|
||||
}
|
||||
|
||||
export enum TypeEnum {
|
||||
Array = "array",
|
||||
IndexedAccess = "indexedAccess",
|
||||
Inferred = "inferred",
|
||||
Intersection = "intersection",
|
||||
Intrinsic = "intrinsic",
|
||||
Literal = "literal",
|
||||
Mapped = "mapped",
|
||||
Query = "query",
|
||||
Reference = "reference",
|
||||
Reflection = "reflection",
|
||||
Tuple = "tuple",
|
||||
TypeOperator = "typeOperator",
|
||||
Union = "union",
|
||||
}
|
||||
|
||||
export interface ExtendedTypeTypeArgument {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
types?: ExtendsType[];
|
||||
typeArguments?: InheritedFrom[];
|
||||
id?: number;
|
||||
}
|
||||
|
||||
export interface InheritedFrom {
|
||||
type: TypeEnum;
|
||||
name: string;
|
||||
}
|
||||
|
||||
export interface ExtendsType {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
types?: ExtendsTypeTypeClass[];
|
||||
typeArguments?: QueryTypeTypeArgument[];
|
||||
value?: string;
|
||||
id?: number;
|
||||
}
|
||||
|
||||
export interface QueryTypeTypeArgument {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
qualifiedName?: QualifiedName;
|
||||
package?: Package;
|
||||
value?: string;
|
||||
id?: number;
|
||||
typeArguments?: InheritedFrom[];
|
||||
types?: InheritedFrom[];
|
||||
}
|
||||
|
||||
export enum QualifiedName {
|
||||
CacheType = "CacheType",
|
||||
InteractionReplyOptions = "InteractionReplyOptions",
|
||||
Result = "Result",
|
||||
}
|
||||
|
||||
export interface ExtendsTypeTypeClass {
|
||||
type: TypeEnum;
|
||||
name: string;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
}
|
||||
|
||||
export enum PurpleKindString {
|
||||
Accessor = "Accessor",
|
||||
Constructor = "Constructor",
|
||||
EnumerationMember = "Enumeration Member",
|
||||
Function = "Function",
|
||||
Method = "Method",
|
||||
Property = "Property",
|
||||
Reference = "Reference",
|
||||
Variable = "Variable",
|
||||
}
|
||||
|
||||
export interface PurpleSignature {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: FluffyKindString;
|
||||
flags: FluffyFlags;
|
||||
comment?: PurpleComment;
|
||||
typeParameter?: SignatureTypeParameter[];
|
||||
parameters?: PurpleParameter[];
|
||||
type: HilariousType;
|
||||
inheritedFrom?: InheritedFrom;
|
||||
overwrites?: InheritedFrom;
|
||||
}
|
||||
|
||||
export interface PurpleComment {
|
||||
summary: PurpleSummary[];
|
||||
blockTags?: BlockTag[];
|
||||
}
|
||||
|
||||
export interface BlockTag {
|
||||
tag: Tag;
|
||||
content: ContentElement[];
|
||||
}
|
||||
|
||||
export enum Tag {
|
||||
Deprecated = "@deprecated",
|
||||
Example = "@example",
|
||||
Returns = "@returns",
|
||||
Since = "@since",
|
||||
}
|
||||
|
||||
export interface PurpleSummary {
|
||||
kind: Kind;
|
||||
text: string;
|
||||
tag?: string;
|
||||
target?: number;
|
||||
}
|
||||
|
||||
export interface FluffyFlags {
|
||||
isExternal?: boolean;
|
||||
}
|
||||
|
||||
export enum FluffyKindString {
|
||||
CallSignature = "Call signature",
|
||||
ConstructorSignature = "Constructor signature",
|
||||
}
|
||||
|
||||
export interface PurpleParameter {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: ParameterKindString;
|
||||
flags: TentacledFlags;
|
||||
comment?: GetSignatureComment;
|
||||
type: PurpleType;
|
||||
defaultValue?: string;
|
||||
}
|
||||
|
||||
export interface TentacledFlags {
|
||||
isExternal?: boolean;
|
||||
isOptional?: boolean;
|
||||
isRest?: boolean;
|
||||
}
|
||||
|
||||
export enum ParameterKindString {
|
||||
Parameter = "Parameter",
|
||||
}
|
||||
|
||||
export interface PurpleType {
|
||||
type: TypeEnum;
|
||||
id?: number;
|
||||
name?: string;
|
||||
typeArguments?: ExtendsType[];
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
types?: ExtendsType[];
|
||||
declaration?: PurpleDeclaration;
|
||||
indexType?: CheckTypeElement;
|
||||
objectType?: CheckTypeElement;
|
||||
elementType?: TentacledElementType;
|
||||
}
|
||||
|
||||
export interface PurpleDeclaration {
|
||||
id: number;
|
||||
name: DeclarationName;
|
||||
kind: number;
|
||||
kindString: DeclarationKindString;
|
||||
flags: FluffyFlags;
|
||||
sources: Source[];
|
||||
signatures: FluffySignature[];
|
||||
}
|
||||
|
||||
export enum DeclarationKindString {
|
||||
CallSignature = "Call signature",
|
||||
Property = "Property",
|
||||
TypeLiteral = "Type literal",
|
||||
}
|
||||
|
||||
export enum DeclarationName {
|
||||
Type = "__type",
|
||||
}
|
||||
|
||||
export interface FluffySignature {
|
||||
id: number;
|
||||
name: DeclarationName;
|
||||
kind: number;
|
||||
kindString: FluffyKindString;
|
||||
flags: FluffyFlags;
|
||||
parameters: FluffyParameter[];
|
||||
type: InheritedFrom;
|
||||
}
|
||||
|
||||
export interface FluffyParameter {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: ParameterKindString;
|
||||
flags: StickyFlags;
|
||||
type: FluffyType;
|
||||
}
|
||||
|
||||
export interface StickyFlags {
|
||||
isExternal?: boolean;
|
||||
isRest: boolean;
|
||||
}
|
||||
|
||||
export interface FluffyType {
|
||||
type: TypeEnum;
|
||||
elementType: PurpleElementType;
|
||||
}
|
||||
|
||||
export interface PurpleElementType {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
indexType?: CheckTypeElement;
|
||||
objectType?: CheckTypeElement;
|
||||
}
|
||||
|
||||
export interface TypeClass {
|
||||
type: TypeEnum;
|
||||
indexType?: InheritedFrom;
|
||||
objectType?: CheckTypeElement;
|
||||
name?: string;
|
||||
declaration?: DeclarationElement;
|
||||
}
|
||||
|
||||
export interface CheckTypeTypeArgument {
|
||||
type: TypeEnum;
|
||||
indexType?: ObjectTypeClass;
|
||||
objectType?: ObjectTypeClass;
|
||||
types?: IndexTypeElement[];
|
||||
name?: string;
|
||||
id?: number;
|
||||
operator?: Operator;
|
||||
target?: TypeClass;
|
||||
}
|
||||
|
||||
export interface DeclarationType {
|
||||
type: TypeEnum;
|
||||
declaration?: DeclarationElement;
|
||||
name?: string;
|
||||
id?: number;
|
||||
elements?: CheckTypeElement[];
|
||||
typeArguments?: PurpleTypeArgument[];
|
||||
types?: ExtendsType[];
|
||||
}
|
||||
|
||||
export interface FluffyElementType {
|
||||
type: TypeEnum;
|
||||
declaration: DeclarationElement;
|
||||
}
|
||||
|
||||
export interface IndecentType {
|
||||
type: TypeEnum;
|
||||
typeArguments?: TentacledTypeArgument[];
|
||||
name?: PurpleName;
|
||||
qualifiedName?: PurpleName;
|
||||
package?: Package;
|
||||
elementType?: FluffyElementType;
|
||||
}
|
||||
|
||||
export interface IndigoType {
|
||||
type: TypeEnum;
|
||||
id?: number;
|
||||
name?: string;
|
||||
declaration?: DeclarationElement;
|
||||
typeArguments?: FluffyTypeArgument[];
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
indexType?: CheckTypeElement;
|
||||
objectType?: ExtendedType;
|
||||
elementType?: InheritedFrom;
|
||||
elements?: TypeElement[];
|
||||
}
|
||||
|
||||
export interface TentacledParameter {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: ParameterKindString;
|
||||
flags: IndecentFlags;
|
||||
type: IndigoType;
|
||||
}
|
||||
|
||||
export interface SignatureSignature {
|
||||
id: number;
|
||||
name: DeclarationName;
|
||||
kind: number;
|
||||
kindString: FluffyKindString;
|
||||
flags: GetSignatureFlags;
|
||||
type: IndecentType;
|
||||
parameters?: TentacledParameter[];
|
||||
}
|
||||
|
||||
export interface PurpleTypeArgument {
|
||||
type: TypeEnum;
|
||||
indexType?: CheckTypeElement;
|
||||
objectType?: InheritedFrom;
|
||||
types?: IndexTypeElement[];
|
||||
}
|
||||
|
||||
export interface TentacledType {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
declaration?: DeclarationElement;
|
||||
id?: number;
|
||||
typeArguments?: PurpleTypeArgument[];
|
||||
elementType?: CheckTypeElement;
|
||||
value?: boolean;
|
||||
types?: ExtendsType[];
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
}
|
||||
|
||||
export interface SignatureChild {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: PurpleKindString;
|
||||
flags: IndigoFlags;
|
||||
sources: Source[];
|
||||
type: TentacledType;
|
||||
}
|
||||
|
||||
export interface DeclarationElement {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: DeclarationKindString;
|
||||
flags: GetSignatureFlags;
|
||||
sources?: Source[];
|
||||
type?: DeclarationType;
|
||||
defaultValue?: string;
|
||||
signatures?: SignatureSignature[];
|
||||
children?: SignatureChild[];
|
||||
groups?: Group[];
|
||||
comment?: GetSignatureComment;
|
||||
parameters?: DeclarationParameter[];
|
||||
}
|
||||
|
||||
export interface CheckTypeElement {
|
||||
type: TypeEnum;
|
||||
id?: number;
|
||||
name?: string;
|
||||
elements?: CheckTypeElement[];
|
||||
types?: CheckTypeTypeClass[];
|
||||
declaration?: DeclarationElement;
|
||||
typeArguments?: CheckTypeTypeArgument[];
|
||||
}
|
||||
|
||||
export interface ObjectTypeClass {
|
||||
type: TypeEnum;
|
||||
id?: number;
|
||||
name: string;
|
||||
}
|
||||
|
||||
export enum Operator {
|
||||
Keyof = "keyof",
|
||||
}
|
||||
|
||||
export interface IndexTypeElement {
|
||||
type: TypeEnum;
|
||||
value: string;
|
||||
}
|
||||
|
||||
export enum PurpleName {
|
||||
Awaitable = "Awaitable",
|
||||
ErrImpl = "ErrImpl",
|
||||
OkImpl = "OkImpl",
|
||||
Unknown = "unknown",
|
||||
}
|
||||
|
||||
export interface TentacledTypeArgument {
|
||||
type: TypeEnum;
|
||||
name?: TypeArgumentName;
|
||||
typeArguments?: InheritedFrom[];
|
||||
qualifiedName?: QualifiedName;
|
||||
package?: Package;
|
||||
types?: InheritedFrom[];
|
||||
}
|
||||
|
||||
export enum TypeArgumentName {
|
||||
Result = "Result",
|
||||
Void = "void",
|
||||
}
|
||||
|
||||
export interface TypeElement {
|
||||
type: TypeEnum;
|
||||
value?: string;
|
||||
id?: number;
|
||||
name?: string;
|
||||
elementType?: InheritedFrom;
|
||||
}
|
||||
|
||||
export interface FluffyTypeArgument {
|
||||
type: TypeEnum;
|
||||
indexType?: IndexTypeElement;
|
||||
objectType?: TypeArgument;
|
||||
name?: string;
|
||||
types?: IndexTypeElement[];
|
||||
}
|
||||
|
||||
export interface TypeArgument {
|
||||
type: TypeEnum;
|
||||
indexType?: InheritedFrom;
|
||||
objectType?: InheritedFrom;
|
||||
types?: IndexTypeElement[];
|
||||
}
|
||||
|
||||
export interface IndecentFlags {
|
||||
isRest?: boolean;
|
||||
}
|
||||
|
||||
export interface IndigoFlags {
|
||||
isOptional?: boolean;
|
||||
}
|
||||
|
||||
export interface Source {
|
||||
fileName: FileName;
|
||||
line: number;
|
||||
character: number;
|
||||
url?: string;
|
||||
}
|
||||
|
||||
export enum FileName {
|
||||
NodeModulesDiscordJSTypingsIndexDTs = "node_modules/discord.js/typings/index.d.ts",
|
||||
NodeModulesTypesNodeEventsDTs = "node_modules/@types/node/events.d.ts",
|
||||
SrcHandlerPluginsPluginTs = "src/handler/plugins/plugin.ts",
|
||||
SrcHandlerSernEmitterTs = "src/handler/sernEmitter.ts",
|
||||
SrcHandlerSernTs = "src/handler/sern.ts",
|
||||
SrcHandlerStructuresContextTs = "src/handler/structures/context.ts",
|
||||
SrcHandlerStructuresEnumsTs = "src/handler/structures/enums.ts",
|
||||
SrcHandlerStructuresModuleTs = "src/handler/structures/module.ts",
|
||||
SrcHandlerStructuresWrapperTs = "src/handler/structures/wrapper.ts",
|
||||
SrcIndexTs = "src/index.ts",
|
||||
SrcTypesHandlerTs = "src/types/handler.ts",
|
||||
}
|
||||
|
||||
export interface Group {
|
||||
title: string;
|
||||
children: number[];
|
||||
}
|
||||
|
||||
export interface DeclarationParameter {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: ParameterKindString;
|
||||
flags: IndecentFlags;
|
||||
type: StickyType;
|
||||
}
|
||||
|
||||
export interface StickyType {
|
||||
type: TypeEnum;
|
||||
id?: number;
|
||||
name?: string;
|
||||
indexType?: InheritedFrom;
|
||||
objectType?: ExtendsType;
|
||||
}
|
||||
|
||||
export interface CheckTypeTypeClass {
|
||||
type: TypeEnum;
|
||||
name: string;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
id?: number;
|
||||
typeArguments?: InheritedFrom[];
|
||||
}
|
||||
|
||||
export interface TentacledElementType {
|
||||
type: TypeEnum;
|
||||
types: ExtendsType[];
|
||||
}
|
||||
|
||||
export interface HilariousType {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
id?: number;
|
||||
typeArguments?: StickyTypeArgument[];
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
elementType?: ExtendsType;
|
||||
}
|
||||
|
||||
export interface StickyTypeArgument {
|
||||
type: TypeEnum;
|
||||
typeArguments?: InheritedFrom[];
|
||||
name?: string;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
indexType?: ExtendedType;
|
||||
objectType?: ExtendedType;
|
||||
elementType?: InheritedFrom;
|
||||
}
|
||||
|
||||
export interface SignatureTypeParameter {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: TypeParameterKindString;
|
||||
flags: FluffyFlags;
|
||||
type: Default;
|
||||
}
|
||||
|
||||
export enum TypeParameterKindString {
|
||||
TypeParameter = "Type parameter",
|
||||
}
|
||||
|
||||
export interface Default {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
operator?: Operator;
|
||||
target?: ExtendedType;
|
||||
id?: number;
|
||||
declaration?: DeclarationElement;
|
||||
}
|
||||
|
||||
export interface AmbitiousType {
|
||||
type: TypeEnum;
|
||||
declaration?: FluffyDeclaration;
|
||||
value?: number | string;
|
||||
queryType?: ExtendsType;
|
||||
name?: string;
|
||||
typeArguments?: InheritedFrom[];
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
types?: MagentaType[];
|
||||
id?: number;
|
||||
}
|
||||
|
||||
export interface FluffyDeclaration {
|
||||
id: number;
|
||||
name: DeclarationName;
|
||||
kind: number;
|
||||
kindString: DeclarationKindString;
|
||||
flags: GetSignatureFlags;
|
||||
children?: DeclarationElement[];
|
||||
groups?: Group[];
|
||||
sources: Source[];
|
||||
signatures?: TentacledSignature[];
|
||||
}
|
||||
|
||||
export interface TentacledSignature {
|
||||
id: number;
|
||||
name: DeclarationName;
|
||||
kind: number;
|
||||
kindString: FluffyKindString;
|
||||
flags: GetSignatureFlags;
|
||||
type: CunningType;
|
||||
}
|
||||
|
||||
export interface CunningType {
|
||||
type: TypeEnum;
|
||||
typeArguments: InheritedFrom[];
|
||||
name: string;
|
||||
qualifiedName: string;
|
||||
package: Package;
|
||||
}
|
||||
|
||||
export interface MagentaType {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
elementType?: FluffyElementType;
|
||||
declaration?: DeclarationElement;
|
||||
}
|
||||
|
||||
export enum TentacledKindString {
|
||||
Class = "Class",
|
||||
Enumeration = "Enumeration",
|
||||
Function = "Function",
|
||||
Interface = "Interface",
|
||||
Namespace = "Namespace",
|
||||
TypeAlias = "Type alias",
|
||||
}
|
||||
|
||||
export interface FriskyType {
|
||||
type: string;
|
||||
id?: number;
|
||||
typeArguments?: IndecentTypeArgument[];
|
||||
name?: TemplateTypeName;
|
||||
types?: MischievousType[];
|
||||
parameter?: string;
|
||||
parameterType?: IndexType;
|
||||
templateType?: PurpleTemplateType;
|
||||
indexType?: IndexType;
|
||||
objectType?: TypeObjectType;
|
||||
declaration?: TentacledDeclaration;
|
||||
optionalModifier?: string;
|
||||
checkType?: CheckTypeElement;
|
||||
extendsType?: ExtendsType;
|
||||
trueType?: CheckTypeElement;
|
||||
falseType?: FalseType;
|
||||
qualifiedName?: TemplateTypeName;
|
||||
package?: Package;
|
||||
}
|
||||
|
||||
export interface TentacledDeclaration {
|
||||
id: number;
|
||||
name: DeclarationName;
|
||||
kind: number;
|
||||
kindString: DeclarationKindString;
|
||||
flags: GetSignatureFlags;
|
||||
children?: DeclarationElement[];
|
||||
groups?: Group[];
|
||||
sources: Source[];
|
||||
signatures?: DeclarationElement[];
|
||||
}
|
||||
|
||||
export interface FalseType {
|
||||
type: string;
|
||||
id?: number;
|
||||
name?: string;
|
||||
checkType?: CheckTypeElement;
|
||||
extendsType?: ExtendedType;
|
||||
trueType?: CheckTypeElement;
|
||||
falseType?: CheckTypeElement;
|
||||
}
|
||||
|
||||
export interface IndexType {
|
||||
type: TypeEnum;
|
||||
id?: number;
|
||||
name?: string;
|
||||
operator?: Operator;
|
||||
target?: CheckTypeElement;
|
||||
}
|
||||
|
||||
export enum TemplateTypeName {
|
||||
DefinitelyDefined = "DefinitelyDefined",
|
||||
Omit = "Omit",
|
||||
Override = "Override",
|
||||
ParseType = "ParseType",
|
||||
}
|
||||
|
||||
export interface TypeObjectType {
|
||||
type: TypeEnum;
|
||||
parameter: string;
|
||||
parameterType: IndexType;
|
||||
templateType: ObjectTypeTemplateType;
|
||||
}
|
||||
|
||||
export interface ObjectTypeTemplateType {
|
||||
type: string;
|
||||
id?: number;
|
||||
typeArguments?: IndigoTypeArgument[];
|
||||
name?: TemplateTypeName;
|
||||
types?: TypeClass[];
|
||||
checkType?: TypeClass;
|
||||
extendsType?: InheritedFrom;
|
||||
trueType?: TrueType;
|
||||
falseType?: InheritedFrom;
|
||||
}
|
||||
|
||||
export interface TrueType {
|
||||
type: TypeEnum;
|
||||
elements: TrueTypeElement[];
|
||||
}
|
||||
|
||||
export interface TrueTypeElement {
|
||||
type: string;
|
||||
name: string;
|
||||
isOptional: boolean;
|
||||
element: TypeClass;
|
||||
}
|
||||
|
||||
export interface IndigoTypeArgument {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
declaration?: DeclarationElement;
|
||||
}
|
||||
|
||||
export interface PurpleTemplateType {
|
||||
type: string;
|
||||
typeArguments?: TypeArgument[];
|
||||
name?: TemplateTypeName;
|
||||
qualifiedName?: TemplateTypeName;
|
||||
package?: Package;
|
||||
checkType?: TypeClass;
|
||||
extendsType?: ExtendsTypeClass;
|
||||
trueType?: EType;
|
||||
falseType?: EType;
|
||||
}
|
||||
|
||||
export interface ExtendsTypeClass {
|
||||
type: TypeEnum;
|
||||
indexType: InheritedFrom;
|
||||
objectType: ExtendsTypeObjectType;
|
||||
}
|
||||
|
||||
export interface ExtendsTypeObjectType {
|
||||
type: TypeEnum;
|
||||
typeArguments: CheckTypeElement[];
|
||||
name: string;
|
||||
qualifiedName: string;
|
||||
package: Package;
|
||||
}
|
||||
|
||||
export interface EType {
|
||||
type: TypeEnum;
|
||||
value: boolean;
|
||||
}
|
||||
|
||||
export interface IndecentTypeArgument {
|
||||
type: TypeEnum;
|
||||
declaration?: DeclarationElement;
|
||||
name?: string;
|
||||
types?: IndexTypeElement[];
|
||||
id?: number;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
typeArguments?: ExtendsType[];
|
||||
}
|
||||
|
||||
export interface MischievousType {
|
||||
type: TypeEnum;
|
||||
name?: string;
|
||||
qualifiedName?: string;
|
||||
package?: Package;
|
||||
id?: number;
|
||||
typeArguments?: IndexType[];
|
||||
parameter?: string;
|
||||
parameterType?: CheckTypeElement;
|
||||
templateType?: FluffyTemplateType;
|
||||
optionalModifier?: string;
|
||||
elementType?: FluffyElementType;
|
||||
declaration?: DeclarationElement;
|
||||
indexType?: CheckTypeElement;
|
||||
objectType?: CheckTypeElement;
|
||||
value?: null;
|
||||
}
|
||||
|
||||
export interface FluffyTemplateType {
|
||||
type: string;
|
||||
checkType: TypeClass;
|
||||
extendsType: ExtendsType;
|
||||
trueType: CheckTypeElement;
|
||||
falseType: ExtendsTypeClass;
|
||||
}
|
||||
|
||||
export interface ChildTypeParameter {
|
||||
id: number;
|
||||
name: string;
|
||||
kind: number;
|
||||
kindString: TypeParameterKindString;
|
||||
flags: GetSignatureFlags;
|
||||
type?: Default;
|
||||
default?: Default;
|
||||
}
|
||||
Reference in New Issue
Block a user