obsidian-typings 2.0.0 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -0
- package/README.md +3 -2
- package/api-extractor.json +37 -0
- package/dist/implementations.cjs +32 -27
- package/dist/implementations.d.ts +93 -84
- package/dist/obsidian-typings.api.json +41285 -0
- package/dist/types.d.ts +5469 -4460
- package/package.json +10 -6
- package/tsdoc.json +25 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2.2.0
|
|
4
|
+
- Added typings for `LinkUpdateHandler` for `inProgressUpdates` and `runAsyncLinkUpdate` (`FileManager`)
|
|
5
|
+
- Added typings for `onChange` method (`Vault`)
|
|
6
|
+
- Fix first parameter type of `exists` (`Vault`)
|
|
7
|
+
- Fix optionality of `getAvailablePathForAttachments` (`Vault`)
|
|
8
|
+
|
|
9
|
+
## 2.1.3
|
|
10
|
+
|
|
11
|
+
- Added _initial_ typings for following views:
|
|
12
|
+
- `AllPropertiesView`
|
|
13
|
+
- `AudioView`
|
|
14
|
+
- `BacklinkView`
|
|
15
|
+
- `BookmarksView`
|
|
16
|
+
- `BrowserHistoryView`
|
|
17
|
+
- `BrowserView`
|
|
18
|
+
- `CanvasView`
|
|
19
|
+
- `EmptyView`
|
|
20
|
+
- `FilePropertiesView`
|
|
21
|
+
- `GraphView`
|
|
22
|
+
- `ImageView`
|
|
23
|
+
- `InfoFileView`
|
|
24
|
+
- `LocalGraphView`
|
|
25
|
+
- `OutgoingLinkView`
|
|
26
|
+
- `OutlineView`
|
|
27
|
+
- `PdfView`
|
|
28
|
+
- `ReleaseNotesView`
|
|
29
|
+
- `SearchView`
|
|
30
|
+
- `TagView`
|
|
31
|
+
- `UnknownView`
|
|
32
|
+
- `VideoView`
|
|
33
|
+
- Add typings for `queue` method on `FileManager`
|
|
34
|
+
|
|
3
35
|
## 2.0.0
|
|
4
36
|
|
|
5
37
|
- Split up typings codebase into separate files
|
package/README.md
CHANGED
|
@@ -144,6 +144,7 @@ this.app.internalPlugins.getEnabledPluginById(InternalPluginName.FileExplorer);
|
|
|
144
144
|
If you need to extend the typings provided by this package, add the following to any `.d.ts` file in your project:
|
|
145
145
|
|
|
146
146
|
```ts
|
|
147
|
+
export {}; // This is a very essential line. If you don't have any other top-level `import/export` statements, those typings will work not as expected.
|
|
147
148
|
declare module "obsidian-typings" {
|
|
148
149
|
interface PluginsPluginsRecord {
|
|
149
150
|
myPlugin: MyPlugin;
|
|
@@ -184,11 +185,11 @@ With these scary disclaimers out of the way, hopefully these typings will help y
|
|
|
184
185
|
|
|
185
186
|
## Migration
|
|
186
187
|
|
|
187
|
-
If you were using a `1.x.x` version of this package, you may need to follow the [Migration guide](MIGRATION.md) after updating to `2.0.0` or newer.
|
|
188
|
+
If you were using a `1.x.x` version of this package, you may need to follow the [Migration guide](https://github.com/Fevol/obsidian-typings/blob/main/MIGRATION.md) after updating to `2.0.0` or newer.
|
|
188
189
|
|
|
189
190
|
|
|
190
191
|
## Contributing
|
|
191
192
|
|
|
192
193
|
Feel free to start typing any part of the Obsidian API that is not yet typed, or fixing/adding additional descriptions to existing typings. If you are unsure about anything, don't hesitate to open an issue.
|
|
193
194
|
|
|
194
|
-
A brief tutorial is available on how you can get started with adding new typings, or fixing existing ones, see: [CONTRIBUTING.md](CONTRIBUTING.md).
|
|
195
|
+
A brief tutorial is available on how you can get started with adding new typings, or fixing existing ones, see: [CONTRIBUTING.md](https://github.com/Fevol/obsidian-typings/blob/main/CONTRIBUTING.md).
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
|
|
3
|
+
"mainEntryPointFilePath": "src/index.d.ts",
|
|
4
|
+
"bundledPackages": [],
|
|
5
|
+
"compiler": {
|
|
6
|
+
},
|
|
7
|
+
"apiReport": {
|
|
8
|
+
"enabled": false
|
|
9
|
+
},
|
|
10
|
+
"docModel": {
|
|
11
|
+
"enabled": true,
|
|
12
|
+
"apiJsonFilePath": "dist/obsidian-typings.api.json"
|
|
13
|
+
},
|
|
14
|
+
"dtsRollup": {
|
|
15
|
+
"enabled": false
|
|
16
|
+
},
|
|
17
|
+
"tsdocMetadata": {
|
|
18
|
+
"enabled": false
|
|
19
|
+
},
|
|
20
|
+
"messages": {
|
|
21
|
+
"compilerMessageReporting": {
|
|
22
|
+
"default": {
|
|
23
|
+
"logLevel": "warning"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"extractorMessageReporting": {
|
|
27
|
+
"default": {
|
|
28
|
+
"logLevel": "warning"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"tsdocMessageReporting": {
|
|
32
|
+
"default": {
|
|
33
|
+
"logLevel": "warning"
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
package/dist/implementations.cjs
CHANGED
|
@@ -21,57 +21,61 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
21
21
|
};
|
|
22
22
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
23
23
|
|
|
24
|
-
// src/implementations/index.ts
|
|
24
|
+
// src/obsidian/implementations/index.ts
|
|
25
25
|
var implementations_exports = {};
|
|
26
26
|
__export(implementations_exports, {
|
|
27
27
|
CustomArrayDictImpl: () => CustomArrayDictImpl,
|
|
28
28
|
InternalPluginName: () => InternalPluginName,
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
createTFileInstance: () => createTFileInstance,
|
|
30
|
+
createTFolderInstance: () => createTFolderInstance
|
|
31
31
|
});
|
|
32
32
|
module.exports = __toCommonJS(implementations_exports);
|
|
33
33
|
|
|
34
|
-
// src/implementations/
|
|
34
|
+
// src/obsidian/implementations/createTFolderInstance.ts
|
|
35
35
|
var import_obsidian = require("obsidian");
|
|
36
|
-
function
|
|
37
|
-
let file = vault.getFileByPath(path);
|
|
38
|
-
if (file) {
|
|
39
|
-
return file;
|
|
40
|
-
}
|
|
41
|
-
file = new import_obsidian.TFile(vault, path);
|
|
42
|
-
file.parent = createTFolder(vault, vault.adapter.path.dirname(path));
|
|
43
|
-
return file;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
// src/implementations/createTFolder.ts
|
|
47
|
-
var import_obsidian2 = require("obsidian");
|
|
48
|
-
function createTFolder(vault, path) {
|
|
36
|
+
function createTFolderInstance(vault, path) {
|
|
49
37
|
let folder = vault.getFolderByPath(path);
|
|
50
38
|
if (folder) {
|
|
51
39
|
return folder;
|
|
52
40
|
}
|
|
53
|
-
folder = new
|
|
54
|
-
folder.parent =
|
|
41
|
+
folder = new import_obsidian.TFolder(vault, path);
|
|
42
|
+
folder.parent = createTFolderInstance(vault, vault.adapter.path.dirname(path));
|
|
55
43
|
return folder;
|
|
56
44
|
}
|
|
57
45
|
|
|
58
|
-
// src/implementations/
|
|
46
|
+
// src/obsidian/implementations/createTFileInstance.ts
|
|
47
|
+
var import_obsidian2 = require("obsidian");
|
|
48
|
+
function createTFileInstance(vault, path) {
|
|
49
|
+
let file = vault.getFileByPath(path);
|
|
50
|
+
if (file) {
|
|
51
|
+
return file;
|
|
52
|
+
}
|
|
53
|
+
file = new import_obsidian2.TFile(vault, path);
|
|
54
|
+
file.parent = createTFolderInstance(vault, vault.adapter.path.dirname(path));
|
|
55
|
+
return file;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// src/obsidian/implementations/CustomArrayDictImpl.ts
|
|
59
59
|
var CustomArrayDictImpl = class {
|
|
60
60
|
data = {};
|
|
61
61
|
add(key, value) {
|
|
62
|
-
if (!this.data.hasOwnProperty(key))
|
|
62
|
+
if (!this.data.hasOwnProperty(key)) {
|
|
63
63
|
this.data[key] = [];
|
|
64
|
+
}
|
|
64
65
|
const values = this.data[key];
|
|
65
|
-
if (!values.includes(value))
|
|
66
|
+
if (!values.includes(value)) {
|
|
66
67
|
values.push(value);
|
|
68
|
+
}
|
|
67
69
|
}
|
|
68
70
|
remove(key, value) {
|
|
69
71
|
const values = this.data[key];
|
|
70
|
-
if (!values)
|
|
72
|
+
if (!values) {
|
|
71
73
|
return;
|
|
74
|
+
}
|
|
72
75
|
values.remove(value);
|
|
73
|
-
if (values.length === 0)
|
|
76
|
+
if (values.length === 0) {
|
|
74
77
|
delete this.data[key];
|
|
78
|
+
}
|
|
75
79
|
}
|
|
76
80
|
removeKey(key) {
|
|
77
81
|
delete this.data[key];
|
|
@@ -95,14 +99,15 @@ var CustomArrayDictImpl = class {
|
|
|
95
99
|
count() {
|
|
96
100
|
let ans = 0;
|
|
97
101
|
for (const key in this.data) {
|
|
98
|
-
if (this.data.hasOwnProperty(key))
|
|
102
|
+
if (this.data.hasOwnProperty(key)) {
|
|
99
103
|
ans += this.data[key].length;
|
|
104
|
+
}
|
|
100
105
|
}
|
|
101
106
|
return ans;
|
|
102
107
|
}
|
|
103
108
|
};
|
|
104
109
|
|
|
105
|
-
// src/implementations/InternalPluginName.ts
|
|
110
|
+
// src/obsidian/implementations/InternalPluginName.ts
|
|
106
111
|
var InternalPluginName = {
|
|
107
112
|
AudioRecorder: "audio-recorder",
|
|
108
113
|
Backlink: "backlink",
|
|
@@ -134,4 +139,4 @@ var InternalPluginName = {
|
|
|
134
139
|
Workspaces: "workspaces",
|
|
135
140
|
ZkPrefixer: "zk-prefixer"
|
|
136
141
|
};
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL29ic2lkaWFuL2ltcGxlbWVudGF0aW9ucy9pbmRleC50cyIsICIuLi9zcmMvb2JzaWRpYW4vaW1wbGVtZW50YXRpb25zL2NyZWF0ZVRGb2xkZXJJbnN0YW5jZS50cyIsICIuLi9zcmMvb2JzaWRpYW4vaW1wbGVtZW50YXRpb25zL2NyZWF0ZVRGaWxlSW5zdGFuY2UudHMiLCAiLi4vc3JjL29ic2lkaWFuL2ltcGxlbWVudGF0aW9ucy9DdXN0b21BcnJheURpY3RJbXBsLnRzIiwgIi4uL3NyYy9vYnNpZGlhbi9pbXBsZW1lbnRhdGlvbnMvSW50ZXJuYWxQbHVnaW5OYW1lLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKiBUSElTIElTIEEgR0VORVJBVEVEL0JVTkRMRUQgRklMRSBCWSBCVUlMRCBTQ1JJUFQgKi9cblxuZXhwb3J0ICogZnJvbSBcIi4vY3JlYXRlVEZvbGRlckluc3RhbmNlLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jcmVhdGVURmlsZUluc3RhbmNlLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9DdXN0b21BcnJheURpY3RJbXBsLmpzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9JbnRlcm5hbFBsdWdpbk5hbWUuanNcIjtcbmltcG9ydCBcIi4uLy4uL2luZGV4LmpzXCI7XG4iLCAiaW1wb3J0IHtcbiAgICBURm9sZGVyLFxuICAgIHR5cGUgVmF1bHRcbn0gZnJvbSBcIm9ic2lkaWFuXCI7XG5cbnR5cGUgVEZvbGRlckNvbnN0cnVjdG9yID0geyBuZXcodmF1bHQ6IFZhdWx0LCBwYXRoOiBzdHJpbmcpOiBURm9sZGVyIH07XG5cbi8qKlxuICogQ3JlYXRlcyBhbmQgcHJvcGVybHkgaW5pdGlhbGl6ZXMgdGhlIGluc3RhbmNlIG9mIFRGb2xkZXIgZXZlbiB0aGUgdW5kZXJseWluZyBmb2xkZXIgZG9lcyBub3QgZXhpc3QuXG4gKiBUaGlzIGRvZXNuJ3QgY3JlYXRlIHRoZSBtaXNzaW5nIGZvbGRlciBvbiB0aGUgZmlsZSBzeXN0ZW0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVURm9sZGVySW5zdGFuY2UodmF1bHQ6IFZhdWx0LCBwYXRoOiBzdHJpbmcpOiBURm9sZGVyIHtcbiAgICBsZXQgZm9sZGVyID0gdmF1bHQuZ2V0Rm9sZGVyQnlQYXRoKHBhdGgpO1xuICAgIGlmIChmb2xkZXIpIHtcbiAgICAgICAgcmV0dXJuIGZvbGRlcjtcbiAgICB9XG5cbiAgICBmb2xkZXIgPSBuZXcgKFRGb2xkZXIgYXMgVEZvbGRlckNvbnN0cnVjdG9yKSh2YXVsdCwgcGF0aCk7XG4gICAgZm9sZGVyLnBhcmVudCA9IGNyZWF0ZVRGb2xkZXJJbnN0YW5jZSh2YXVsdCwgdmF1bHQuYWRhcHRlci5wYXRoLmRpcm5hbWUocGF0aCkpO1xuICAgIHJldHVybiBmb2xkZXI7XG59XG4iLCAiaW1wb3J0IHtcbiAgICBURmlsZSxcbiAgICB0eXBlIFZhdWx0XG59IGZyb20gXCJvYnNpZGlhblwiO1xuaW1wb3J0IHsgY3JlYXRlVEZvbGRlckluc3RhbmNlIH0gZnJvbSBcIi4vY3JlYXRlVEZvbGRlckluc3RhbmNlLnRzXCI7XG5cbnR5cGUgVEZpbGVDb25zdHJ1Y3RvciA9IHsgbmV3KHZhdWx0OiBWYXVsdCwgcGF0aDogc3RyaW5nKTogVEZpbGUgfTtcblxuLyoqXG4gKiBDcmVhdGVzIGFuZCBwcm9wZXJseSBpbml0aWFsaXplcyB0aGUgaW5zdGFuY2Ugb2YgVEZpbGUgZXZlbiB0aGUgdW5kZXJseWluZyBmaWxlIGRvZXMgbm90IGV4aXN0LlxuICogVGhpcyBkb2Vzbid0IGNyZWF0ZSB0aGUgbWlzc2luZyBmaWxlIG9uIHRoZSBmaWxlIHN5c3RlbS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVRGaWxlSW5zdGFuY2UodmF1bHQ6IFZhdWx0LCBwYXRoOiBzdHJpbmcpOiBURmlsZSB7XG4gICAgbGV0IGZpbGUgPSB2YXVsdC5nZXRGaWxlQnlQYXRoKHBhdGgpO1xuICAgIGlmIChmaWxlKSB7XG4gICAgICAgIHJldHVybiBmaWxlO1xuICAgIH1cblxuICAgIGZpbGUgPSBuZXcgKFRGaWxlIGFzIFRGaWxlQ29uc3RydWN0b3IpKHZhdWx0LCBwYXRoKTtcbiAgICBmaWxlLnBhcmVudCA9IGNyZWF0ZVRGb2xkZXJJbnN0YW5jZSh2YXVsdCwgdmF1bHQuYWRhcHRlci5wYXRoLmRpcm5hbWUocGF0aCkpO1xuICAgIHJldHVybiBmaWxlO1xufVxuIiwgImltcG9ydCB0eXBlIHsgQ3VzdG9tQXJyYXlEaWN0IH0gZnJvbSBcIi4uL2ludGVybmFscy9DdXN0b21BcnJheURpY3QvQ3VzdG9tQXJyYXlEaWN0LmpzXCI7XG5pbXBvcnQgdHlwZSB7IEN1c3RvbUFycmF5RGljdERhdGFSZWNvcmQgfSBmcm9tIFwiLi4vaW50ZXJuYWxzL0N1c3RvbUFycmF5RGljdC9DdXN0b21BcnJheURpY3REYXRhUmVjb3JkLmpzXCI7XG5cbmV4cG9ydCBjbGFzcyBDdXN0b21BcnJheURpY3RJbXBsPFQ+IGltcGxlbWVudHMgQ3VzdG9tQXJyYXlEaWN0PFQ+IHtcbiAgICBwdWJsaWMgZGF0YTogQ3VzdG9tQXJyYXlEaWN0RGF0YVJlY29yZDxUPiA9IHt9O1xuXG4gICAgcHVibGljIGFkZChrZXk6IHN0cmluZywgdmFsdWU6IFQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCEodGhpcy5kYXRhLmhhc093blByb3BlcnR5KGtleSkpKSB7XG4gICAgICAgICAgICB0aGlzLmRhdGFba2V5XSA9IFtdIGFzIFRbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHZhbHVlcyA9IHRoaXMuZGF0YVtrZXldITtcblxuICAgICAgICBpZiAoIXZhbHVlcy5pbmNsdWRlcyh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHZhbHVlcy5wdXNoKHZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmUoa2V5OiBzdHJpbmcsIHZhbHVlOiBUKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHZhbHVlcyA9IHRoaXMuZGF0YVtrZXldO1xuICAgICAgICBpZiAoIXZhbHVlcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHZhbHVlcy5yZW1vdmUodmFsdWUpO1xuXG4gICAgICAgIGlmICh2YWx1ZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICBkZWxldGUgdGhpcy5kYXRhW2tleV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlS2V5KGtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGRlbGV0ZSB0aGlzLmRhdGFba2V5XTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0KGtleTogc3RyaW5nKTogVFtdIHwgbnVsbCB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGEuaGFzT3duUHJvcGVydHkoa2V5KSA/IHRoaXMuZGF0YVtrZXldISA6IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIGtleXMoKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5kYXRhKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xlYXIoa2V5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgZGVsZXRlIHRoaXMuZGF0YVtrZXldO1xuICAgIH1cblxuICAgIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kYXRhID0ge307XG4gICAgfVxuXG4gICAgcHVibGljIGNvbnRhaW5zKGtleTogc3RyaW5nLCB2YWx1ZTogVCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLmRhdGFba2V5XTtcbiAgICAgICAgcmV0dXJuIHZhbHVlcyAmJiB2YWx1ZXMuY29udGFpbnModmFsdWUpIHx8IGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb3VudCgpOiBudW1iZXIge1xuICAgICAgICBsZXQgYW5zID0gMDtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gdGhpcy5kYXRhKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5kYXRhLmhhc093blByb3BlcnR5KGtleSkpIHtcbiAgICAgICAgICAgICAgICBhbnMgKz0gdGhpcy5kYXRhW2tleV0hLmxlbmd0aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBhbnM7XG4gICAgfVxufVxuIiwgImV4cG9ydCBjb25zdCBJbnRlcm5hbFBsdWdpbk5hbWUgPSB7XG4gICAgQXVkaW9SZWNvcmRlcjogXCJhdWRpby1yZWNvcmRlclwiLFxuICAgIEJhY2tsaW5rOiBcImJhY2tsaW5rXCIsXG4gICAgQm9va21hcmtzOiBcImJvb2ttYXJrc1wiLFxuICAgIENhbnZhczogXCJjYW52YXNcIixcbiAgICBDb21tYW5kUGFsZXR0ZTogXCJjb21tYW5kLXBhbGV0dGVcIixcbiAgICBEYWlseU5vdGVzOiBcImRhaWx5LW5vdGVzXCIsXG4gICAgRWRpdG9yU3RhdHVzOiBcImVkaXRvci1zdGF0dXNcIixcbiAgICBGaWxlRXhwbG9yZXI6IFwiZmlsZS1leHBsb3JlclwiLFxuICAgIEZpbGVSZWNvdmVyeTogXCJmaWxlLXJlY292ZXJ5XCIsXG4gICAgR2xvYmFsU2VhcmNoOiBcImdsb2JhbC1zZWFyY2hcIixcbiAgICBHcmFwaDogXCJncmFwaFwiLFxuICAgIE1hcmtkb3duSW1wb3J0ZXI6IFwibWFya2Rvd24taW1wb3J0ZXJcIixcbiAgICBOb3RlQ29tcG9zZXI6IFwibm90ZS1jb21wb3NlclwiLFxuICAgIE91dGdvaW5nTGluazogXCJvdXRnb2luZy1saW5rXCIsXG4gICAgT3V0bGluZTogXCJvdXRsaW5lXCIsXG4gICAgUGFnZVByZXZpZXc6IFwicGFnZS1wcmV2aWV3XCIsXG4gICAgUHJvcGVydGllczogXCJwcm9wZXJ0aWVzXCIsXG4gICAgUHVibGlzaDogXCJwdWJsaXNoXCIsXG4gICAgUmFuZG9tTm90ZTogXCJyYW5kb20tbm90ZVwiLFxuICAgIFNsYXNoQ29tbWFuZDogXCJzbGFzaC1jb21tYW5kXCIsXG4gICAgU2xpZGVzOiBcInNsaWRlc1wiLFxuICAgIFN0YXJyZWQ6IFwic3RhcnJlZFwiLFxuICAgIFN3aXRjaGVyOiBcInN3aXRjaGVyXCIsXG4gICAgU3luYzogXCJzeW5jXCIsXG4gICAgVGFnUGFuZTogXCJ0YWctcGFuZVwiLFxuICAgIFRlbXBsYXRlczogXCJ0ZW1wbGF0ZXNcIixcbiAgICBXb3JkQ291bnQ6IFwid29yZC1jb3VudFwiLFxuICAgIFdvcmtzcGFjZXM6IFwid29ya3NwYWNlc1wiLFxuICAgIFprUHJlZml4ZXI6IFwiemstcHJlZml4ZXJcIlxufSBhcyBjb25zdDtcbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7OztBQ0FBLHNCQUdPO0FBUUEsU0FBUyxzQkFBc0IsT0FBYyxNQUF1QjtBQUN2RSxNQUFJLFNBQVMsTUFBTSxnQkFBZ0IsSUFBSTtBQUN2QyxNQUFJLFFBQVE7QUFDUixXQUFPO0FBQUEsRUFDWDtBQUVBLFdBQVMsSUFBSyx3QkFBK0IsT0FBTyxJQUFJO0FBQ3hELFNBQU8sU0FBUyxzQkFBc0IsT0FBTyxNQUFNLFFBQVEsS0FBSyxRQUFRLElBQUksQ0FBQztBQUM3RSxTQUFPO0FBQ1g7OztBQ3BCQSxJQUFBQSxtQkFHTztBQVNBLFNBQVMsb0JBQW9CLE9BQWMsTUFBcUI7QUFDbkUsTUFBSSxPQUFPLE1BQU0sY0FBYyxJQUFJO0FBQ25DLE1BQUksTUFBTTtBQUNOLFdBQU87QUFBQSxFQUNYO0FBRUEsU0FBTyxJQUFLLHVCQUEyQixPQUFPLElBQUk7QUFDbEQsT0FBSyxTQUFTLHNCQUFzQixPQUFPLE1BQU0sUUFBUSxLQUFLLFFBQVEsSUFBSSxDQUFDO0FBQzNFLFNBQU87QUFDWDs7O0FDbEJPLElBQU0sc0JBQU4sTUFBMkQ7QUFBQSxFQUN2RCxPQUFxQyxDQUFDO0FBQUEsRUFFdEMsSUFBSSxLQUFhLE9BQWdCO0FBQ3BDLFFBQUksQ0FBRSxLQUFLLEtBQUssZUFBZSxHQUFHLEdBQUk7QUFDbEMsV0FBSyxLQUFLLEdBQUcsSUFBSSxDQUFDO0FBQUEsSUFDdEI7QUFFQSxVQUFNLFNBQVMsS0FBSyxLQUFLLEdBQUc7QUFFNUIsUUFBSSxDQUFDLE9BQU8sU0FBUyxLQUFLLEdBQUc7QUFDekIsYUFBTyxLQUFLLEtBQUs7QUFBQSxJQUNyQjtBQUFBLEVBQ0o7QUFBQSxFQUVPLE9BQU8sS0FBYSxPQUFnQjtBQUN2QyxVQUFNLFNBQVMsS0FBSyxLQUFLLEdBQUc7QUFDNUIsUUFBSSxDQUFDLFFBQVE7QUFDVDtBQUFBLElBQ0o7QUFDQSxXQUFPLE9BQU8sS0FBSztBQUVuQixRQUFJLE9BQU8sV0FBVyxHQUFHO0FBQ3JCLGFBQU8sS0FBSyxLQUFLLEdBQUc7QUFBQSxJQUN4QjtBQUFBLEVBQ0o7QUFBQSxFQUVPLFVBQVUsS0FBbUI7QUFDaEMsV0FBTyxLQUFLLEtBQUssR0FBRztBQUFBLEVBQ3hCO0FBQUEsRUFFTyxJQUFJLEtBQXlCO0FBQ2hDLFdBQU8sS0FBSyxLQUFLLGVBQWUsR0FBRyxJQUFJLEtBQUssS0FBSyxHQUFHLElBQUs7QUFBQSxFQUM3RDtBQUFBLEVBRU8sT0FBaUI7QUFDcEIsV0FBTyxPQUFPLEtBQUssS0FBSyxJQUFJO0FBQUEsRUFDaEM7QUFBQSxFQUVPLE1BQU0sS0FBbUI7QUFDNUIsV0FBTyxLQUFLLEtBQUssR0FBRztBQUFBLEVBQ3hCO0FBQUEsRUFFTyxXQUFpQjtBQUNwQixTQUFLLE9BQU8sQ0FBQztBQUFBLEVBQ2pCO0FBQUEsRUFFTyxTQUFTLEtBQWEsT0FBbUI7QUFDNUMsVUFBTSxTQUFTLEtBQUssS0FBSyxHQUFHO0FBQzVCLFdBQU8sVUFBVSxPQUFPLFNBQVMsS0FBSyxLQUFLO0FBQUEsRUFDL0M7QUFBQSxFQUVPLFFBQWdCO0FBQ25CLFFBQUksTUFBTTtBQUNWLGVBQVcsT0FBTyxLQUFLLE1BQU07QUFDekIsVUFBSSxLQUFLLEtBQUssZUFBZSxHQUFHLEdBQUc7QUFDL0IsZUFBTyxLQUFLLEtBQUssR0FBRyxFQUFHO0FBQUEsTUFDM0I7QUFBQSxJQUNKO0FBRUEsV0FBTztBQUFBLEVBQ1g7QUFDSjs7O0FDakVPLElBQU0scUJBQXFCO0FBQUEsRUFDOUIsZUFBZTtBQUFBLEVBQ2YsVUFBVTtBQUFBLEVBQ1YsV0FBVztBQUFBLEVBQ1gsUUFBUTtBQUFBLEVBQ1IsZ0JBQWdCO0FBQUEsRUFDaEIsWUFBWTtBQUFBLEVBQ1osY0FBYztBQUFBLEVBQ2QsY0FBYztBQUFBLEVBQ2QsY0FBYztBQUFBLEVBQ2QsY0FBYztBQUFBLEVBQ2QsT0FBTztBQUFBLEVBQ1Asa0JBQWtCO0FBQUEsRUFDbEIsY0FBYztBQUFBLEVBQ2QsY0FBYztBQUFBLEVBQ2QsU0FBUztBQUFBLEVBQ1QsYUFBYTtBQUFBLEVBQ2IsWUFBWTtBQUFBLEVBQ1osU0FBUztBQUFBLEVBQ1QsWUFBWTtBQUFBLEVBQ1osY0FBYztBQUFBLEVBQ2QsUUFBUTtBQUFBLEVBQ1IsU0FBUztBQUFBLEVBQ1QsVUFBVTtBQUFBLEVBQ1YsTUFBTTtBQUFBLEVBQ04sU0FBUztBQUFBLEVBQ1QsV0FBVztBQUFBLEVBQ1gsV0FBVztBQUFBLEVBQ1gsWUFBWTtBQUFBLEVBQ1osWUFBWTtBQUNoQjsiLAogICJuYW1lcyI6IFsiaW1wb3J0X29ic2lkaWFuIl0KfQo=
|
|
@@ -5,16 +5,45 @@ import * as fsPromises from 'node:fs/promises';
|
|
|
5
5
|
import * as path from 'node:path';
|
|
6
6
|
import { TAbstractFile, TFile, TFolder, Vault } from 'obsidian';
|
|
7
7
|
|
|
8
|
-
/**
|
|
9
|
-
* Creates and properly initializes the instance of TFile even the underlying file does not exist.
|
|
10
|
-
* This doesn't create the missing file on the file system.
|
|
11
|
-
*/
|
|
12
|
-
export declare function createTFile(vault: Vault, path: string): TFile;
|
|
13
8
|
/**
|
|
14
9
|
* Creates and properly initializes the instance of TFolder even the underlying folder does not exist.
|
|
15
10
|
* This doesn't create the missing folder on the file system.
|
|
16
11
|
*/
|
|
17
|
-
export declare function
|
|
12
|
+
export declare function createTFolderInstance(vault: Vault, path: string): TFolder;
|
|
13
|
+
/**
|
|
14
|
+
* Creates and properly initializes the instance of TFile even the underlying file does not exist.
|
|
15
|
+
* This doesn't create the missing file on the file system.
|
|
16
|
+
*/
|
|
17
|
+
export declare function createTFileInstance(vault: Vault, path: string): TFile;
|
|
18
|
+
/** @public */
|
|
19
|
+
export interface CustomArrayDictDataRecord<T> extends Record<string, T[]> {
|
|
20
|
+
}
|
|
21
|
+
/** @todo Documentation incomplete */
|
|
22
|
+
/** @public */
|
|
23
|
+
export interface CustomArrayDict<T> {
|
|
24
|
+
data: CustomArrayDictDataRecord<T>;
|
|
25
|
+
add(key: string, value: T): void;
|
|
26
|
+
clear(key: string): void;
|
|
27
|
+
clearAll(): void;
|
|
28
|
+
contains(key: string, value: T): boolean;
|
|
29
|
+
count(): number;
|
|
30
|
+
get(key: string): T[] | null;
|
|
31
|
+
keys(): string[];
|
|
32
|
+
remove(key: string, value: T): void;
|
|
33
|
+
removeKey(key: string): void;
|
|
34
|
+
}
|
|
35
|
+
export declare class CustomArrayDictImpl<T> implements CustomArrayDict<T> {
|
|
36
|
+
data: CustomArrayDictDataRecord<T>;
|
|
37
|
+
add(key: string, value: T): void;
|
|
38
|
+
remove(key: string, value: T): void;
|
|
39
|
+
removeKey(key: string): void;
|
|
40
|
+
get(key: string): T[] | null;
|
|
41
|
+
keys(): string[];
|
|
42
|
+
clear(key: string): void;
|
|
43
|
+
clearAll(): void;
|
|
44
|
+
contains(key: string, value: T): boolean;
|
|
45
|
+
count(): number;
|
|
46
|
+
}
|
|
18
47
|
export declare const InternalPluginName: {
|
|
19
48
|
readonly AudioRecorder: "audio-recorder";
|
|
20
49
|
readonly Backlink: "backlink";
|
|
@@ -46,73 +75,77 @@ export declare const InternalPluginName: {
|
|
|
46
75
|
readonly Workspaces: "workspaces";
|
|
47
76
|
readonly ZkPrefixer: "zk-prefixer";
|
|
48
77
|
};
|
|
78
|
+
/** @public */
|
|
79
|
+
export interface AppVaultConfigHotkeysRecord extends Record<string, string> {
|
|
80
|
+
}
|
|
81
|
+
/** @public */
|
|
49
82
|
export interface AppVaultConfig {
|
|
50
83
|
/**
|
|
51
|
-
* Appearance
|
|
84
|
+
* Appearance \> Accent color
|
|
52
85
|
*/
|
|
53
86
|
accentColor: "" | string;
|
|
54
87
|
/**
|
|
55
|
-
* Files & Links
|
|
88
|
+
* Files & Links \> Automatically update internal links
|
|
56
89
|
*/
|
|
57
90
|
alwaysUpdateLinks?: false | boolean;
|
|
58
91
|
/**
|
|
59
|
-
* Files & Links
|
|
92
|
+
* Files & Links \> Attachment folder path
|
|
60
93
|
*/
|
|
61
94
|
attachmentFolderPath?: "/" | string;
|
|
62
95
|
/**
|
|
63
|
-
* Editor
|
|
96
|
+
* Editor \> Auto convert HTML
|
|
64
97
|
*/
|
|
65
98
|
autoConvertHtml?: true | boolean;
|
|
66
99
|
/**
|
|
67
|
-
* Editor
|
|
100
|
+
* Editor \> Auto pair brackets
|
|
68
101
|
*/
|
|
69
102
|
autoPairBrackets?: true | boolean;
|
|
70
103
|
/**
|
|
71
|
-
* Editor
|
|
104
|
+
* Editor \> Auto pair Markdown syntax
|
|
72
105
|
*/
|
|
73
106
|
autoPairMarkdown?: true | boolean;
|
|
74
107
|
/**
|
|
75
|
-
* Appearance
|
|
108
|
+
* Appearance \> Font size
|
|
76
109
|
*/
|
|
77
110
|
baseFontSize?: 16 | number;
|
|
78
111
|
/**
|
|
79
|
-
* Appearance
|
|
112
|
+
* Appearance \> Quick font size adjustment
|
|
80
113
|
*/
|
|
81
114
|
baseFontSizeAction?: true | boolean;
|
|
82
115
|
/**
|
|
83
|
-
* Community Plugins
|
|
116
|
+
* Community Plugins \> Browse \> Sort order
|
|
84
117
|
*/
|
|
85
118
|
communityPluginSortOrder: "download" | "update" | "release" | "alphabetical";
|
|
86
119
|
/**
|
|
87
|
-
* Themes
|
|
120
|
+
* Themes \> Browse \> Sort order
|
|
88
121
|
*/
|
|
89
122
|
communityThemeSortOrder: "download" | "update" | "release" | "alphabetical";
|
|
90
123
|
/**
|
|
91
|
-
* Appearance
|
|
124
|
+
* Appearance \> Theme
|
|
92
125
|
*
|
|
93
126
|
* @remark is the default Obsidian theme
|
|
94
127
|
*/
|
|
95
128
|
cssTheme?: "" | string;
|
|
96
129
|
/**
|
|
97
|
-
* Editor
|
|
130
|
+
* Editor \> Default view for new tabs
|
|
98
131
|
*/
|
|
99
132
|
defaultViewMode?: "source" | "preview";
|
|
100
133
|
emacsyKeys?: true | boolean;
|
|
101
134
|
/**
|
|
102
|
-
* Appearance
|
|
135
|
+
* Appearance \> CSS snippets
|
|
103
136
|
*/
|
|
104
137
|
enabledCssSnippets?: string[];
|
|
105
138
|
fileSortOrder?: "alphabetical";
|
|
106
139
|
/**
|
|
107
|
-
* Editor
|
|
140
|
+
* Editor \> Always focus new tabs
|
|
108
141
|
*/
|
|
109
142
|
focusNewTab?: true | boolean;
|
|
110
143
|
/**
|
|
111
|
-
* Editor
|
|
144
|
+
* Editor \> Fold heading
|
|
112
145
|
*/
|
|
113
146
|
foldHeading?: true | boolean;
|
|
114
147
|
/**
|
|
115
|
-
* Editor
|
|
148
|
+
* Editor \> Fold indent
|
|
116
149
|
*/
|
|
117
150
|
foldIndent?: true | boolean;
|
|
118
151
|
/**
|
|
@@ -122,38 +155,38 @@ export interface AppVaultConfig {
|
|
|
122
155
|
*/
|
|
123
156
|
hotkeys?: AppVaultConfigHotkeysRecord;
|
|
124
157
|
/**
|
|
125
|
-
* Appearance
|
|
158
|
+
* Appearance \> Interface font
|
|
126
159
|
*/
|
|
127
160
|
interfaceFontFamily?: "" | string;
|
|
128
161
|
/**
|
|
129
|
-
* Editor
|
|
162
|
+
* Editor \> Use legacy editor
|
|
130
163
|
*/
|
|
131
164
|
legacyEditor?: false | boolean;
|
|
132
165
|
livePreview?: true | boolean;
|
|
133
166
|
/**
|
|
134
|
-
* Mobile
|
|
167
|
+
* Mobile \> Configure mobile Quick Action
|
|
135
168
|
*/
|
|
136
169
|
mobilePullAction?: "command-palette:open" | string;
|
|
137
170
|
mobileQuickRibbonItem?: "" | string;
|
|
138
171
|
/**
|
|
139
|
-
* Mobile
|
|
172
|
+
* Mobile \> Manage toolbar options
|
|
140
173
|
*/
|
|
141
174
|
mobileToolbarCommands?: string[];
|
|
142
175
|
monospaceFontFamily?: "" | string;
|
|
143
176
|
/**
|
|
144
|
-
* Appearance
|
|
177
|
+
* Appearance \> Native menus
|
|
145
178
|
*/
|
|
146
179
|
nativeMenus?: null | boolean;
|
|
147
180
|
/**
|
|
148
|
-
* Files & Links
|
|
181
|
+
* Files & Links \> Default location for new notes | 'folder' \> Folder to create new notes in
|
|
149
182
|
*/
|
|
150
183
|
newFileFolderPath?: "/" | string;
|
|
151
184
|
/**
|
|
152
|
-
* Files & Links
|
|
185
|
+
* Files & Links \> Default location for new notes
|
|
153
186
|
*/
|
|
154
187
|
newFileLocation?: "root" | "current" | "folder";
|
|
155
188
|
/**
|
|
156
|
-
* Files & Links
|
|
189
|
+
* Files & Links \> New link format
|
|
157
190
|
*/
|
|
158
191
|
newLinkFormat?: "shortest" | "relative" | "absolute";
|
|
159
192
|
/**
|
|
@@ -166,127 +199,115 @@ export interface AppVaultConfig {
|
|
|
166
199
|
downscalePercent: 100 | number;
|
|
167
200
|
};
|
|
168
201
|
/**
|
|
169
|
-
* Files & Links
|
|
202
|
+
* Files & Links \> Confirm line deletion
|
|
170
203
|
*/
|
|
171
204
|
promptDelete?: true | boolean;
|
|
172
205
|
/**
|
|
173
|
-
* Editor
|
|
206
|
+
* Editor \> Properties in document
|
|
174
207
|
*/
|
|
175
208
|
propertiesInDocument?: "visible" | "hidden" | "source";
|
|
176
209
|
/**
|
|
177
|
-
* Editor
|
|
210
|
+
* Editor \> Readable line length
|
|
178
211
|
*/
|
|
179
212
|
readableLineLength?: true | boolean;
|
|
180
213
|
/**
|
|
181
|
-
* Editor
|
|
214
|
+
* Editor \> Right-to-left (RTL)
|
|
182
215
|
*/
|
|
183
216
|
rightToLeft?: false | boolean;
|
|
184
217
|
/** @deprecated Removed as of version 1.4.3 */
|
|
185
218
|
showFrontmatter?: false | boolean;
|
|
186
219
|
/**
|
|
187
|
-
* Editor
|
|
220
|
+
* Editor \> Show indentation guides
|
|
188
221
|
*/
|
|
189
222
|
showIndentGuide?: true | boolean;
|
|
190
223
|
/**
|
|
191
|
-
* Editor
|
|
224
|
+
* Editor \> Show inline title
|
|
192
225
|
*/
|
|
193
226
|
showInlineTitle?: true | boolean;
|
|
194
227
|
/**
|
|
195
|
-
* Editor
|
|
228
|
+
* Editor \> Show line numbers
|
|
196
229
|
*/
|
|
197
230
|
showLineNumber?: false | boolean;
|
|
198
231
|
/**
|
|
199
|
-
* Appearance
|
|
232
|
+
* Appearance \> Show ribbon
|
|
200
233
|
*/
|
|
201
234
|
showRibbon?: true | boolean;
|
|
202
235
|
/**
|
|
203
|
-
* Files & Links
|
|
236
|
+
* Files & Links \> Detect all file extensions
|
|
204
237
|
*/
|
|
205
238
|
showUnsupportedFiles?: false | boolean;
|
|
206
239
|
/**
|
|
207
|
-
* Appearance
|
|
240
|
+
* Appearance \> Show tab title bar
|
|
208
241
|
*/
|
|
209
242
|
showViewHeader?: false | boolean;
|
|
210
243
|
/**
|
|
211
|
-
* Editor
|
|
244
|
+
* Editor \> Smart indent lists
|
|
212
245
|
*/
|
|
213
246
|
smartIndentList?: true | boolean;
|
|
214
247
|
/**
|
|
215
|
-
* Editor
|
|
248
|
+
* Editor \> Spellcheck
|
|
216
249
|
*/
|
|
217
250
|
spellcheck?: false | boolean;
|
|
218
|
-
/** @deprecated */
|
|
251
|
+
/** @deprecated Deprecated @todo */
|
|
219
252
|
spellcheckDictionary?: [
|
|
220
253
|
] | string[];
|
|
221
254
|
/**
|
|
222
|
-
* Editor
|
|
255
|
+
* Editor \> Spellcheck languages
|
|
223
256
|
*/
|
|
224
257
|
spellcheckLanguages?: null | string[];
|
|
225
258
|
/**
|
|
226
|
-
* Editor
|
|
259
|
+
* Editor \> Strict line breaks
|
|
227
260
|
*/
|
|
228
261
|
strictLineBreaks?: false | boolean;
|
|
229
262
|
/**
|
|
230
|
-
* Editor
|
|
263
|
+
* Editor \> Tab indent size
|
|
231
264
|
*/
|
|
232
265
|
tabSize?: 4 | number;
|
|
233
266
|
/**
|
|
234
|
-
* Appearance
|
|
267
|
+
* Appearance \> Text font
|
|
235
268
|
*/
|
|
236
269
|
textFontFamily?: "" | string;
|
|
237
270
|
/**
|
|
238
|
-
* Appearance
|
|
271
|
+
* Appearance \> Base color scheme
|
|
239
272
|
*
|
|
240
273
|
* @remark Not be confused with cssTheme, this setting is for the light/dark mode
|
|
241
274
|
* @remark moonstone is light theme, "obsidian" is dark theme
|
|
242
275
|
*/
|
|
243
276
|
theme?: "moonstone" | "obsidian";
|
|
244
277
|
/**
|
|
245
|
-
* Appearance
|
|
278
|
+
* Appearance \> Translucent window
|
|
246
279
|
*/
|
|
247
280
|
translucency?: false | boolean;
|
|
248
281
|
/**
|
|
249
|
-
* Files & Links
|
|
282
|
+
* Files & Links \> Deleted files
|
|
250
283
|
*/
|
|
251
284
|
trashOption?: "system" | "local" | "none";
|
|
252
285
|
/** @deprecated Probably left-over code from old properties type storage */
|
|
253
286
|
types: object;
|
|
254
287
|
/**
|
|
255
|
-
* Files & Links
|
|
288
|
+
* Files & Links \> Use [[Wikilinks]]
|
|
256
289
|
*/
|
|
257
290
|
useMarkdownLinks?: false | boolean;
|
|
258
291
|
/**
|
|
259
|
-
* Files & Links
|
|
292
|
+
* Files & Links \> Excluded files
|
|
260
293
|
*/
|
|
261
294
|
userIgnoreFilters?: null | string[];
|
|
262
295
|
/**
|
|
263
|
-
* Editor
|
|
296
|
+
* Editor \> Indent using tabs
|
|
264
297
|
*/
|
|
265
298
|
useTab?: true | boolean;
|
|
266
299
|
/**
|
|
267
|
-
* Editor
|
|
300
|
+
* Editor \> Vim key bindings
|
|
268
301
|
*/
|
|
269
302
|
vimMode?: false | boolean;
|
|
270
303
|
}
|
|
271
|
-
export interface AppVaultConfigHotkeysRecord extends Record<string, string> {
|
|
272
|
-
}
|
|
273
304
|
/** @todo Documentation incomplete */
|
|
305
|
+
/** @public */
|
|
274
306
|
export type ConfigItem = "accentColor" | "alwaysUpdateLinks" | "attachmentFolderPath" | "autoConvertHtml" | "autoPairBrackets" | "autoPairMarkdown" | "baseFontSize" | "baseFontSizeAction" | "cssTheme" | "defaultViewMode" | "emacsyKeys" | "enabledCssSnippets" | "fileSortOrder" | "focusNewTab" | "foldHeading" | "foldIndent" | "hotkeys" | "interfaceFontFamily" | "legacyEditor" | "livePreview" | "mobilePullAction" | "mobileQuickRibbonItem" | "mobileToolbarCommands" | "monospaceFontFamily" | "nativeMenus" | "newFileFolderPath" | "newFileLocation" | "newLinkFormat" | "pdfExportSettings" | "promptDelete" | "propertiesInDocument" | "readableLineLength" | "rightToLeft" | "showIndentGuide" | "showInlineTitle" | "showLineNumber" | "showUnsupportedFiles" | "showViewHeader" | "showRibbon" | "smartIndentList" | "spellcheck" | "spellcheckLanguages" | "strictLineBreaks" | "tabSize" | "textFontFamily" | "theme" | "translucency" | "trashOption" | "types" | "useMarkdownLinks" | "useTab" | "userIgnoreFilters" | "vimMode";
|
|
275
|
-
/** @
|
|
276
|
-
export interface
|
|
277
|
-
data: CustomArrayDictDataRecord<T>;
|
|
278
|
-
add(key: string, value: T): void;
|
|
279
|
-
clear(key: string): void;
|
|
280
|
-
clearAll(): void;
|
|
281
|
-
contains(key: string, value: T): boolean;
|
|
282
|
-
count(): number;
|
|
283
|
-
get(key: string): T[] | null;
|
|
284
|
-
keys(): string[];
|
|
285
|
-
remove(key: string, value: T): void;
|
|
286
|
-
removeKey(key: string): void;
|
|
287
|
-
}
|
|
288
|
-
export interface CustomArrayDictDataRecord<T> extends Record<string, T[]> {
|
|
307
|
+
/** @public */
|
|
308
|
+
export interface VaultFileMapRecord extends Record<string, TAbstractFile> {
|
|
289
309
|
}
|
|
310
|
+
/** @public */
|
|
290
311
|
export interface FileEntry {
|
|
291
312
|
/**
|
|
292
313
|
* Creation time (if file)
|
|
@@ -311,26 +332,14 @@ export interface FileEntry {
|
|
|
311
332
|
*/
|
|
312
333
|
type: "file" | "folder";
|
|
313
334
|
}
|
|
335
|
+
/** @public */
|
|
314
336
|
export interface DataAdapterFilesRecord extends Record<string, FileEntry> {
|
|
315
337
|
}
|
|
338
|
+
/** @public */
|
|
316
339
|
export interface DataAdapterWatchersRecord extends Record<string, {
|
|
317
340
|
resolvedPath: string;
|
|
318
341
|
watcher: unknown;
|
|
319
342
|
}> {
|
|
320
343
|
}
|
|
321
|
-
export interface VaultFileMapRecord extends Record<string, TAbstractFile> {
|
|
322
|
-
}
|
|
323
|
-
export declare class CustomArrayDictImpl<T> implements CustomArrayDict<T> {
|
|
324
|
-
data: CustomArrayDictDataRecord<T>;
|
|
325
|
-
add(key: string, value: T): void;
|
|
326
|
-
remove(key: string, value: T): void;
|
|
327
|
-
removeKey(key: string): void;
|
|
328
|
-
get(key: string): T[] | null;
|
|
329
|
-
keys(): string[];
|
|
330
|
-
clear(key: string): void;
|
|
331
|
-
clearAll(): void;
|
|
332
|
-
contains(key: string, value: T): boolean;
|
|
333
|
-
count(): number;
|
|
334
|
-
}
|
|
335
344
|
|
|
336
345
|
export {};
|