forked from processing/p5.js-website
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuilders.interface.ts
51 lines (48 loc) · 1.23 KB
/
builders.interface.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/**
* @description interface for a single reference doc
* @interface ReferenceMDXDoc
* @property {string} mdx - the mdx content
* @property {string} name - the name of the doc
* @property {string} savePath - the path to save the mdx file
*/
export interface ReferenceMDXDoc {
mdx: string;
name: string;
savePath: string;
}
/**
* @description ModulePathTree is used to structure the export of the reference docs
* @interface ModulePathTree
*/
export interface ReferenceModulePathTree {
/* Each class stores key-value pairs that map the name of the specific reference doc to a path */
classes: {
[className: string]: {
[docName: string]: string;
};
};
/* Each module stores key-value pairs that map the name of the specific reference doc to a path OR a submodule */
modules: {
[moduleName: string]: {
[submoduleNameOrDocName: string]:
| string
| {
[docName: string]: string;
};
};
};
}
interface ClassPreviews {
description?: string;
path: string;
}
export interface ReferenceClassPreviews {
[className: string]: {
methods?: {
[methodName: string]: ClassPreviews;
};
properties?: {
[propertyName: string]: ClassPreviews;
};
};
}