@corsa-bind/napi 0.7.1 → 0.9.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/README.md +8 -0
- package/dist/index.d.mts +19 -3
- package/dist/index.mjs +48 -0
- package/dist/index.mjs.map +1 -1
- package/index.d.ts +93 -51
- package/index.js +540 -275
- package/package.json +9 -9
package/README.md
CHANGED
|
@@ -23,6 +23,14 @@ binary through platform-specific optional dependencies.
|
|
|
23
23
|
You must provide a compatible `typescript-go` (`tsgo`) executable yourself and
|
|
24
24
|
pass its path through `TsgoApiClient.spawn({ executable: "/path/to/tsgo" })`.
|
|
25
25
|
|
|
26
|
+
## API style
|
|
27
|
+
|
|
28
|
+
The wrapper exposes Promise-based methods such as `spawnAsync`,
|
|
29
|
+
`initializeAsync`, `updateSnapshotAsync`, `callJsonAsync`, `callBinaryAsync`,
|
|
30
|
+
and `closeAsync` for production Node services and editor integrations. The
|
|
31
|
+
older synchronous methods remain available for short scripts and latency-bounded
|
|
32
|
+
tooling, but they run on the JavaScript call path.
|
|
33
|
+
|
|
26
34
|
## Development
|
|
27
35
|
|
|
28
36
|
```bash
|
package/dist/index.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ApiClientOptions, ApiMode, CapabilitiesResponse, ConfigResponse, DiagnosticsCapabilities, DocumentIdentifier, EditorCapabilities, FileChangeSummary, FileChanges, FileDiagnosticsResponse, InitializeResponse, NativeLintDiagnostic, NativeLintFix, NativeLintNode, NativeLintRange, NativeLintRuleMeta, NativeLintSuggestion, OverlayCapabilities, OverlayChanges, OverlayUpdate, ProjectDiagnosticsResponse, ProjectResponse, RuntimeCapabilities, SnapshotDiagnosticsResponse, SymbolResponse, TypeResponse, TypeTextKind, UnsafeTypeFlowInput, UpdateSnapshotParams, UpdateSnapshotResponse, VirtualChange, VirtualDocumentState } from "./types.mjs";
|
|
2
|
-
import * as ___index_js0 from "../index.js";
|
|
2
|
+
import * as _$___index_js0 from "../index.js";
|
|
3
3
|
|
|
4
4
|
//#region index.d.ts
|
|
5
|
-
declare const binding: typeof ___index_js0;
|
|
5
|
+
declare const binding: typeof _$___index_js0;
|
|
6
6
|
declare function isUnsafeAssignment(input: UnsafeTypeFlowInput): boolean;
|
|
7
7
|
declare function isUnsafeReturn(input: UnsafeTypeFlowInput): boolean;
|
|
8
8
|
declare function runNativeLintRule(ruleName: string, node: NativeLintNode): NativeLintDiagnostic[];
|
|
@@ -37,21 +37,37 @@ declare class CorsaApiClient {
|
|
|
37
37
|
#private;
|
|
38
38
|
private constructor();
|
|
39
39
|
static spawn(options: ApiClientOptions): CorsaApiClient;
|
|
40
|
+
static spawnAsync(options: ApiClientOptions): Promise<CorsaApiClient>;
|
|
40
41
|
initialize(): InitializeResponse;
|
|
42
|
+
initializeAsync(): Promise<InitializeResponse>;
|
|
41
43
|
parseConfigFile(file: string): ConfigResponse;
|
|
44
|
+
parseConfigFileAsync(file: string): Promise<ConfigResponse>;
|
|
42
45
|
updateSnapshot(params?: UpdateSnapshotParams): UpdateSnapshotResponse;
|
|
46
|
+
updateSnapshotAsync(params?: UpdateSnapshotParams): Promise<UpdateSnapshotResponse>;
|
|
43
47
|
getSourceFile(snapshot: string, project: string, file: string): Uint8Array | null;
|
|
48
|
+
getSourceFileAsync(snapshot: string, project: string, file: string): Promise<Uint8Array | null>;
|
|
44
49
|
getStringType(snapshot: string, project: string): TypeResponse;
|
|
50
|
+
getStringTypeAsync(snapshot: string, project: string): Promise<TypeResponse>;
|
|
45
51
|
getTypeAtPosition(snapshot: string, project: string, file: string, position: number): TypeResponse | undefined;
|
|
52
|
+
getTypeAtPositionAsync(snapshot: string, project: string, file: string, position: number): Promise<TypeResponse | undefined>;
|
|
46
53
|
getSymbolAtPosition(snapshot: string, project: string, file: string, position: number): SymbolResponse | undefined;
|
|
54
|
+
getSymbolAtPositionAsync(snapshot: string, project: string, file: string, position: number): Promise<SymbolResponse | undefined>;
|
|
47
55
|
getTypeArguments(snapshot: string, project: string, typeHandle: string, objectFlags?: number): TypeResponse[];
|
|
56
|
+
getTypeArgumentsAsync(snapshot: string, project: string, typeHandle: string, objectFlags?: number): Promise<TypeResponse[]>;
|
|
48
57
|
getTypeOfSymbol(snapshot: string, project: string, symbol: string): TypeResponse | undefined;
|
|
58
|
+
getTypeOfSymbolAsync(snapshot: string, project: string, symbol: string): Promise<TypeResponse | undefined>;
|
|
49
59
|
getDeclaredTypeOfSymbol(snapshot: string, project: string, symbol: string): TypeResponse | undefined;
|
|
60
|
+
getDeclaredTypeOfSymbolAsync(snapshot: string, project: string, symbol: string): Promise<TypeResponse | undefined>;
|
|
50
61
|
typeToString(snapshot: string, project: string, typeHandle: string, location?: string, flags?: number): string;
|
|
62
|
+
typeToStringAsync(snapshot: string, project: string, typeHandle: string, location?: string, flags?: number): Promise<string>;
|
|
51
63
|
callJson<T>(method: string, params?: unknown): T;
|
|
64
|
+
callJsonAsync<T>(method: string, params?: unknown): Promise<T>;
|
|
52
65
|
callBinary(method: string, params?: unknown): Uint8Array | null;
|
|
66
|
+
callBinaryAsync(method: string, params?: unknown): Promise<Uint8Array | null>;
|
|
53
67
|
releaseHandle(handle: string): void;
|
|
68
|
+
releaseHandleAsync(handle: string): Promise<void>;
|
|
54
69
|
close(): void;
|
|
70
|
+
closeAsync(): Promise<void>;
|
|
55
71
|
}
|
|
56
72
|
declare class CorsaVirtualDocument {
|
|
57
73
|
#private;
|
|
@@ -79,7 +95,7 @@ declare class CorsaDistributedOrchestrator {
|
|
|
79
95
|
closeVirtualDocument(uri: string): void;
|
|
80
96
|
private requireLeader;
|
|
81
97
|
}
|
|
82
|
-
declare const version: typeof ___index_js0.version;
|
|
98
|
+
declare const version: typeof _$___index_js0.version;
|
|
83
99
|
//#endregion
|
|
84
100
|
export { ApiClientOptions, ApiMode, CapabilitiesResponse, ConfigResponse, CorsaApiClient, CorsaApiClient as TsgoApiClient, CorsaDistributedOrchestrator, CorsaDistributedOrchestrator as TsgoDistributedOrchestrator, CorsaVirtualDocument, CorsaVirtualDocument as TsgoVirtualDocument, DiagnosticsCapabilities, DocumentIdentifier, EditorCapabilities, FileChangeSummary, FileChanges, FileDiagnosticsResponse, InitializeResponse, NativeLintDiagnostic, NativeLintFix, NativeLintNode, NativeLintRange, NativeLintRuleMeta, NativeLintSuggestion, OverlayCapabilities, OverlayChanges, OverlayUpdate, ProjectDiagnosticsResponse, ProjectResponse, RuntimeCapabilities, SnapshotDiagnosticsResponse, SymbolResponse, TypeResponse, TypeTextKind, UnsafeTypeFlowInput, UpdateSnapshotParams, UpdateSnapshotResponse, Utils, VirtualChange, VirtualDocumentState, classifyTypeText, binding as default, isAnyLikeTypeTexts, isArrayLikeTypeTexts, isBigIntLikeTypeTexts, isErrorLikeTypeTexts, isNumberLikeTypeTexts, isPromiseLikeTypeTexts, isStringArrayLikeTypeTexts, isStringLikeTypeTexts, isUnknownLikeTypeTexts, isUnsafeAssignment, isUnsafeReturn, nativeLintRuleMetas, runNativeLintRule, splitTopLevelTypeText, splitTypeText, version };
|
|
85
101
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.mjs
CHANGED
|
@@ -77,51 +77,99 @@ var CorsaApiClient = class CorsaApiClient {
|
|
|
77
77
|
static spawn(options) {
|
|
78
78
|
return new CorsaApiClient(binding.TsgoApiClient.spawn(toJson(options)));
|
|
79
79
|
}
|
|
80
|
+
static async spawnAsync(options) {
|
|
81
|
+
return new CorsaApiClient(await binding.spawnTsgoApiClientAsync(toJson(options)));
|
|
82
|
+
}
|
|
80
83
|
initialize() {
|
|
81
84
|
return fromJson(this.#inner.initializeJson());
|
|
82
85
|
}
|
|
86
|
+
async initializeAsync() {
|
|
87
|
+
return fromJson(await this.#inner.initializeJsonAsync());
|
|
88
|
+
}
|
|
83
89
|
parseConfigFile(file) {
|
|
84
90
|
return fromJson(this.#inner.parseConfigFileJson(file));
|
|
85
91
|
}
|
|
92
|
+
async parseConfigFileAsync(file) {
|
|
93
|
+
return fromJson(await this.#inner.parseConfigFileJsonAsync(file));
|
|
94
|
+
}
|
|
86
95
|
updateSnapshot(params) {
|
|
87
96
|
return fromJson(this.#inner.updateSnapshotJson(params ? toJson(params) : void 0));
|
|
88
97
|
}
|
|
98
|
+
async updateSnapshotAsync(params) {
|
|
99
|
+
return fromJson(await this.#inner.updateSnapshotJsonAsync(params ? toJson(params) : void 0));
|
|
100
|
+
}
|
|
89
101
|
getSourceFile(snapshot, project, file) {
|
|
90
102
|
return this.#inner.getSourceFile(snapshot, project, file) ?? null;
|
|
91
103
|
}
|
|
104
|
+
async getSourceFileAsync(snapshot, project, file) {
|
|
105
|
+
return await this.#inner.getSourceFileAsync(snapshot, project, file) ?? null;
|
|
106
|
+
}
|
|
92
107
|
getStringType(snapshot, project) {
|
|
93
108
|
return fromJson(this.#inner.getStringTypeJson(snapshot, project));
|
|
94
109
|
}
|
|
110
|
+
async getStringTypeAsync(snapshot, project) {
|
|
111
|
+
return fromJson(await this.#inner.getStringTypeJsonAsync(snapshot, project));
|
|
112
|
+
}
|
|
95
113
|
getTypeAtPosition(snapshot, project, file, position) {
|
|
96
114
|
return fromJson(this.#inner.getTypeAtPositionJson(snapshot, project, file, position)) ?? void 0;
|
|
97
115
|
}
|
|
116
|
+
async getTypeAtPositionAsync(snapshot, project, file, position) {
|
|
117
|
+
return fromJson(await this.#inner.getTypeAtPositionJsonAsync(snapshot, project, file, position)) ?? void 0;
|
|
118
|
+
}
|
|
98
119
|
getSymbolAtPosition(snapshot, project, file, position) {
|
|
99
120
|
return fromJson(this.#inner.getSymbolAtPositionJson(snapshot, project, file, position)) ?? void 0;
|
|
100
121
|
}
|
|
122
|
+
async getSymbolAtPositionAsync(snapshot, project, file, position) {
|
|
123
|
+
return fromJson(await this.#inner.getSymbolAtPositionJsonAsync(snapshot, project, file, position)) ?? void 0;
|
|
124
|
+
}
|
|
101
125
|
getTypeArguments(snapshot, project, typeHandle, objectFlags) {
|
|
102
126
|
return fromJson(this.#inner.getTypeArgumentsJson(snapshot, project, typeHandle, objectFlags));
|
|
103
127
|
}
|
|
128
|
+
async getTypeArgumentsAsync(snapshot, project, typeHandle, objectFlags) {
|
|
129
|
+
return fromJson(await this.#inner.getTypeArgumentsJsonAsync(snapshot, project, typeHandle, objectFlags));
|
|
130
|
+
}
|
|
104
131
|
getTypeOfSymbol(snapshot, project, symbol) {
|
|
105
132
|
return fromJson(this.#inner.getTypeOfSymbolJson(snapshot, project, symbol)) ?? void 0;
|
|
106
133
|
}
|
|
134
|
+
async getTypeOfSymbolAsync(snapshot, project, symbol) {
|
|
135
|
+
return fromJson(await this.#inner.getTypeOfSymbolJsonAsync(snapshot, project, symbol)) ?? void 0;
|
|
136
|
+
}
|
|
107
137
|
getDeclaredTypeOfSymbol(snapshot, project, symbol) {
|
|
108
138
|
return fromJson(this.#inner.getDeclaredTypeOfSymbolJson(snapshot, project, symbol)) ?? void 0;
|
|
109
139
|
}
|
|
140
|
+
async getDeclaredTypeOfSymbolAsync(snapshot, project, symbol) {
|
|
141
|
+
return fromJson(await this.#inner.getDeclaredTypeOfSymbolJsonAsync(snapshot, project, symbol)) ?? void 0;
|
|
142
|
+
}
|
|
110
143
|
typeToString(snapshot, project, typeHandle, location, flags) {
|
|
111
144
|
return this.#inner.typeToString(snapshot, project, typeHandle, location, flags);
|
|
112
145
|
}
|
|
146
|
+
async typeToStringAsync(snapshot, project, typeHandle, location, flags) {
|
|
147
|
+
return this.#inner.typeToStringAsync(snapshot, project, typeHandle, location, flags);
|
|
148
|
+
}
|
|
113
149
|
callJson(method, params) {
|
|
114
150
|
return fromJson(this.#inner.callJson(method, params ? toJson(params) : void 0));
|
|
115
151
|
}
|
|
152
|
+
async callJsonAsync(method, params) {
|
|
153
|
+
return fromJson(await this.#inner.callJsonAsync(method, params ? toJson(params) : void 0));
|
|
154
|
+
}
|
|
116
155
|
callBinary(method, params) {
|
|
117
156
|
return this.#inner.callBinary(method, params ? toJson(params) : void 0) ?? null;
|
|
118
157
|
}
|
|
158
|
+
async callBinaryAsync(method, params) {
|
|
159
|
+
return await this.#inner.callBinaryAsync(method, params ? toJson(params) : void 0) ?? null;
|
|
160
|
+
}
|
|
119
161
|
releaseHandle(handle) {
|
|
120
162
|
this.#inner.releaseHandle(handle);
|
|
121
163
|
}
|
|
164
|
+
async releaseHandleAsync(handle) {
|
|
165
|
+
await this.#inner.releaseHandleAsync(handle);
|
|
166
|
+
}
|
|
122
167
|
close() {
|
|
123
168
|
this.#inner.close();
|
|
124
169
|
}
|
|
170
|
+
async closeAsync() {
|
|
171
|
+
await this.#inner.closeAsync();
|
|
172
|
+
}
|
|
125
173
|
};
|
|
126
174
|
var CorsaVirtualDocument = class CorsaVirtualDocument {
|
|
127
175
|
#inner;
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":["#inner"],"sources":["../ts/index.ts"],"sourcesContent":["import * as nativeModule from \"../index.js\";\n\nimport type {\n ApiClientOptions,\n ConfigResponse,\n InitializeResponse,\n NativeLintDiagnostic,\n NativeLintNode,\n NativeLintRuleMeta,\n SymbolResponse,\n TypeTextKind,\n TypeResponse,\n UnsafeTypeFlowInput,\n UpdateSnapshotParams,\n UpdateSnapshotResponse,\n VirtualChange,\n VirtualDocumentState,\n} from \"./types\";\n\nconst binding = (\n \"default\" in nativeModule ? nativeModule.default : nativeModule\n) as typeof import(\"../index.js\");\n\ntype NativeApiClient = InstanceType<typeof binding.TsgoApiClient>;\ntype NativeDistributedOrchestrator = InstanceType<typeof binding.TsgoDistributedOrchestrator>;\ntype NativeVirtualDocument = InstanceType<typeof binding.TsgoVirtualDocument>;\n\nfunction fromJson<T>(value: string): T {\n return JSON.parse(value) as T;\n}\n\nfunction toJson(value: unknown): string {\n return JSON.stringify(value ?? null);\n}\n\nexport function isUnsafeAssignment(input: UnsafeTypeFlowInput): boolean {\n return binding.isUnsafeAssignment(toJson(input));\n}\n\nexport function isUnsafeReturn(input: UnsafeTypeFlowInput): boolean {\n return binding.isUnsafeReturn(toJson(input));\n}\n\nexport function runNativeLintRule(ruleName: string, node: NativeLintNode): NativeLintDiagnostic[] {\n return fromJson(binding.runNativeLintRule(ruleName, toJson(node)));\n}\n\nexport function nativeLintRuleMetas(): NativeLintRuleMeta[] {\n return fromJson(binding.nativeLintRuleMetasJson());\n}\n\nexport function classifyTypeText(text?: string): TypeTextKind {\n return binding.classifyTypeText(text) as TypeTextKind;\n}\n\nexport function splitTopLevelTypeText(text: string, delimiter: string): string[] {\n return binding.splitTopLevelTypeText(text, delimiter);\n}\n\nexport function splitTypeText(text: string): string[] {\n return binding.splitTypeText(text);\n}\n\nexport function isStringLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isStringLikeTypeTexts([...typeTexts]);\n}\n\nexport function isNumberLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isNumberLikeTypeTexts([...typeTexts]);\n}\n\nexport function isBigIntLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isBigIntLikeTypeTexts([...typeTexts]);\n}\n\nexport function isAnyLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isAnyLikeTypeTexts([...typeTexts]);\n}\n\nexport function isUnknownLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isUnknownLikeTypeTexts([...typeTexts]);\n}\n\nexport function isArrayLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isArrayLikeTypeTexts([...typeTexts]);\n}\n\nexport function isStringArrayLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isStringArrayLikeTypeTexts([...typeTexts]);\n}\n\nexport function isPromiseLikeTypeTexts(\n typeTexts: readonly string[],\n propertyNames: readonly string[] = [],\n): boolean {\n return binding.isPromiseLikeTypeTexts([...typeTexts], [...propertyNames]);\n}\n\nexport function isErrorLikeTypeTexts(\n typeTexts: readonly string[],\n propertyNames: readonly string[] = [],\n): boolean {\n return binding.isErrorLikeTypeTexts([...typeTexts], [...propertyNames]);\n}\n\nexport const Utils = Object.freeze({\n classifyTypeText,\n splitTopLevelTypeText,\n splitTypeText,\n isStringLikeTypeTexts,\n isNumberLikeTypeTexts,\n isBigIntLikeTypeTexts,\n isAnyLikeTypeTexts,\n isUnknownLikeTypeTexts,\n isArrayLikeTypeTexts,\n isStringArrayLikeTypeTexts,\n isPromiseLikeTypeTexts,\n isErrorLikeTypeTexts,\n});\n\nexport class CorsaApiClient {\n readonly #inner: NativeApiClient;\n\n private constructor(inner: NativeApiClient) {\n this.#inner = inner;\n }\n\n static spawn(options: ApiClientOptions): CorsaApiClient {\n return new CorsaApiClient(binding.TsgoApiClient.spawn(toJson(options)));\n }\n\n initialize(): InitializeResponse {\n return fromJson(this.#inner.initializeJson());\n }\n\n parseConfigFile(file: string): ConfigResponse {\n return fromJson(this.#inner.parseConfigFileJson(file));\n }\n\n updateSnapshot(params?: UpdateSnapshotParams): UpdateSnapshotResponse {\n return fromJson(this.#inner.updateSnapshotJson(params ? toJson(params) : undefined));\n }\n\n getSourceFile(snapshot: string, project: string, file: string): Uint8Array | null {\n return this.#inner.getSourceFile(snapshot, project, file) ?? null;\n }\n\n getStringType(snapshot: string, project: string): TypeResponse {\n return fromJson(this.#inner.getStringTypeJson(snapshot, project));\n }\n\n getTypeAtPosition(\n snapshot: string,\n project: string,\n file: string,\n position: number,\n ): TypeResponse | undefined {\n return (\n fromJson<TypeResponse | null>(\n this.#inner.getTypeAtPositionJson(snapshot, project, file, position),\n ) ?? undefined\n );\n }\n\n getSymbolAtPosition(\n snapshot: string,\n project: string,\n file: string,\n position: number,\n ): SymbolResponse | undefined {\n return (\n fromJson<SymbolResponse | null>(\n this.#inner.getSymbolAtPositionJson(snapshot, project, file, position),\n ) ?? undefined\n );\n }\n\n getTypeArguments(\n snapshot: string,\n project: string,\n typeHandle: string,\n objectFlags?: number,\n ): TypeResponse[] {\n return fromJson(this.#inner.getTypeArgumentsJson(snapshot, project, typeHandle, objectFlags));\n }\n\n getTypeOfSymbol(snapshot: string, project: string, symbol: string): TypeResponse | undefined {\n return (\n fromJson<TypeResponse | null>(this.#inner.getTypeOfSymbolJson(snapshot, project, symbol)) ??\n undefined\n );\n }\n\n getDeclaredTypeOfSymbol(\n snapshot: string,\n project: string,\n symbol: string,\n ): TypeResponse | undefined {\n return (\n fromJson<TypeResponse | null>(\n this.#inner.getDeclaredTypeOfSymbolJson(snapshot, project, symbol),\n ) ?? undefined\n );\n }\n\n typeToString(\n snapshot: string,\n project: string,\n typeHandle: string,\n location?: string,\n flags?: number,\n ): string {\n return this.#inner.typeToString(snapshot, project, typeHandle, location, flags);\n }\n\n callJson<T>(method: string, params?: unknown): T {\n return fromJson(this.#inner.callJson(method, params ? toJson(params) : undefined));\n }\n\n callBinary(method: string, params?: unknown): Uint8Array | null {\n return this.#inner.callBinary(method, params ? toJson(params) : undefined) ?? null;\n }\n\n releaseHandle(handle: string): void {\n this.#inner.releaseHandle(handle);\n }\n\n close(): void {\n this.#inner.close();\n }\n}\n\nexport class CorsaVirtualDocument {\n readonly #inner: NativeVirtualDocument;\n\n private constructor(inner: NativeVirtualDocument) {\n this.#inner = inner;\n }\n\n static untitled(path: string, languageId: string, text: string): CorsaVirtualDocument {\n return new CorsaVirtualDocument(binding.TsgoVirtualDocument.untitled(path, languageId, text));\n }\n\n static inMemory(\n authority: string,\n path: string,\n languageId: string,\n text: string,\n ): CorsaVirtualDocument {\n return new CorsaVirtualDocument(\n binding.TsgoVirtualDocument.inMemory(authority, path, languageId, text),\n );\n }\n\n get uri(): string {\n return this.#inner.uri;\n }\n\n get languageId(): string {\n return this.#inner.languageId;\n }\n\n get version(): number {\n return this.#inner.version;\n }\n\n get text(): string {\n return this.#inner.text;\n }\n\n state(): VirtualDocumentState {\n return fromJson(this.#inner.stateJson());\n }\n\n replace(text: string): void {\n this.#inner.replace(text);\n }\n\n applyChanges(changes: VirtualChange[]): unknown[] {\n return fromJson(this.#inner.applyChangesJson(toJson(changes)));\n }\n}\n\nexport class CorsaDistributedOrchestrator {\n readonly #inner: NativeDistributedOrchestrator;\n\n constructor(nodeIds: string[]) {\n this.#inner = new binding.TsgoDistributedOrchestrator(nodeIds);\n }\n\n campaign(nodeId: string): number {\n return this.#inner.campaign(nodeId);\n }\n\n leaderId(): string | undefined {\n return this.#inner.leaderId() ?? undefined;\n }\n\n state<T>(): T | undefined {\n const value = this.#inner.stateJson();\n return value ? fromJson<T>(value) : undefined;\n }\n\n nodeState<T>(nodeId: string): T | undefined {\n const value = this.#inner.nodeStateJson(nodeId);\n return value ? fromJson<T>(value) : undefined;\n }\n\n document(nodeId: string, uri: string): VirtualDocumentState | undefined {\n const value = this.#inner.documentJson(nodeId, uri);\n return value ? fromJson<VirtualDocumentState>(value) : undefined;\n }\n\n openVirtualDocument(document: VirtualDocumentState): VirtualDocumentState {\n return fromJson(this.#inner.openVirtualDocumentJson(this.requireLeader(), toJson(document)));\n }\n\n changeVirtualDocument(uri: string, changes: VirtualChange[]): VirtualDocumentState {\n return fromJson(\n this.#inner.changeVirtualDocumentJson(this.requireLeader(), uri, toJson(changes)),\n );\n }\n\n closeVirtualDocument(uri: string): void {\n this.#inner.closeVirtualDocument(this.requireLeader(), uri);\n }\n\n private requireLeader(): string {\n const leaderId = this.leaderId();\n if (!leaderId) {\n throw new Error(\"raft leader has not been elected\");\n }\n return leaderId;\n }\n}\n\nexport {\n CorsaApiClient as TsgoApiClient,\n CorsaDistributedOrchestrator as TsgoDistributedOrchestrator,\n CorsaVirtualDocument as TsgoVirtualDocument,\n};\n\nexport default binding;\nexport const version = binding.version;\nexport type * from \"./types\";\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["#inner"],"sources":["../ts/index.ts"],"sourcesContent":["import * as nativeModule from \"../index.js\";\n\nimport type {\n ApiClientOptions,\n ConfigResponse,\n InitializeResponse,\n NativeLintDiagnostic,\n NativeLintNode,\n NativeLintRuleMeta,\n SymbolResponse,\n TypeTextKind,\n TypeResponse,\n UnsafeTypeFlowInput,\n UpdateSnapshotParams,\n UpdateSnapshotResponse,\n VirtualChange,\n VirtualDocumentState,\n} from \"./types\";\n\nconst binding = (\n \"default\" in nativeModule ? nativeModule.default : nativeModule\n) as typeof import(\"../index.js\");\n\ntype NativeApiClient = InstanceType<typeof binding.TsgoApiClient>;\ntype NativeDistributedOrchestrator = InstanceType<typeof binding.TsgoDistributedOrchestrator>;\ntype NativeVirtualDocument = InstanceType<typeof binding.TsgoVirtualDocument>;\n\nfunction fromJson<T>(value: string): T {\n return JSON.parse(value) as T;\n}\n\nfunction toJson(value: unknown): string {\n return JSON.stringify(value ?? null);\n}\n\nexport function isUnsafeAssignment(input: UnsafeTypeFlowInput): boolean {\n return binding.isUnsafeAssignment(toJson(input));\n}\n\nexport function isUnsafeReturn(input: UnsafeTypeFlowInput): boolean {\n return binding.isUnsafeReturn(toJson(input));\n}\n\nexport function runNativeLintRule(ruleName: string, node: NativeLintNode): NativeLintDiagnostic[] {\n return fromJson(binding.runNativeLintRule(ruleName, toJson(node)));\n}\n\nexport function nativeLintRuleMetas(): NativeLintRuleMeta[] {\n return fromJson(binding.nativeLintRuleMetasJson());\n}\n\nexport function classifyTypeText(text?: string): TypeTextKind {\n return binding.classifyTypeText(text) as TypeTextKind;\n}\n\nexport function splitTopLevelTypeText(text: string, delimiter: string): string[] {\n return binding.splitTopLevelTypeText(text, delimiter);\n}\n\nexport function splitTypeText(text: string): string[] {\n return binding.splitTypeText(text);\n}\n\nexport function isStringLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isStringLikeTypeTexts([...typeTexts]);\n}\n\nexport function isNumberLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isNumberLikeTypeTexts([...typeTexts]);\n}\n\nexport function isBigIntLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isBigIntLikeTypeTexts([...typeTexts]);\n}\n\nexport function isAnyLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isAnyLikeTypeTexts([...typeTexts]);\n}\n\nexport function isUnknownLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isUnknownLikeTypeTexts([...typeTexts]);\n}\n\nexport function isArrayLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isArrayLikeTypeTexts([...typeTexts]);\n}\n\nexport function isStringArrayLikeTypeTexts(typeTexts: readonly string[]): boolean {\n return binding.isStringArrayLikeTypeTexts([...typeTexts]);\n}\n\nexport function isPromiseLikeTypeTexts(\n typeTexts: readonly string[],\n propertyNames: readonly string[] = [],\n): boolean {\n return binding.isPromiseLikeTypeTexts([...typeTexts], [...propertyNames]);\n}\n\nexport function isErrorLikeTypeTexts(\n typeTexts: readonly string[],\n propertyNames: readonly string[] = [],\n): boolean {\n return binding.isErrorLikeTypeTexts([...typeTexts], [...propertyNames]);\n}\n\nexport const Utils = Object.freeze({\n classifyTypeText,\n splitTopLevelTypeText,\n splitTypeText,\n isStringLikeTypeTexts,\n isNumberLikeTypeTexts,\n isBigIntLikeTypeTexts,\n isAnyLikeTypeTexts,\n isUnknownLikeTypeTexts,\n isArrayLikeTypeTexts,\n isStringArrayLikeTypeTexts,\n isPromiseLikeTypeTexts,\n isErrorLikeTypeTexts,\n});\n\nexport class CorsaApiClient {\n readonly #inner: NativeApiClient;\n\n private constructor(inner: NativeApiClient) {\n this.#inner = inner;\n }\n\n static spawn(options: ApiClientOptions): CorsaApiClient {\n return new CorsaApiClient(binding.TsgoApiClient.spawn(toJson(options)));\n }\n\n static async spawnAsync(options: ApiClientOptions): Promise<CorsaApiClient> {\n return new CorsaApiClient(await binding.spawnTsgoApiClientAsync(toJson(options)));\n }\n\n initialize(): InitializeResponse {\n return fromJson(this.#inner.initializeJson());\n }\n\n async initializeAsync(): Promise<InitializeResponse> {\n return fromJson(await this.#inner.initializeJsonAsync());\n }\n\n parseConfigFile(file: string): ConfigResponse {\n return fromJson(this.#inner.parseConfigFileJson(file));\n }\n\n async parseConfigFileAsync(file: string): Promise<ConfigResponse> {\n return fromJson(await this.#inner.parseConfigFileJsonAsync(file));\n }\n\n updateSnapshot(params?: UpdateSnapshotParams): UpdateSnapshotResponse {\n return fromJson(this.#inner.updateSnapshotJson(params ? toJson(params) : undefined));\n }\n\n async updateSnapshotAsync(params?: UpdateSnapshotParams): Promise<UpdateSnapshotResponse> {\n return fromJson(await this.#inner.updateSnapshotJsonAsync(params ? toJson(params) : undefined));\n }\n\n getSourceFile(snapshot: string, project: string, file: string): Uint8Array | null {\n return this.#inner.getSourceFile(snapshot, project, file) ?? null;\n }\n\n async getSourceFileAsync(\n snapshot: string,\n project: string,\n file: string,\n ): Promise<Uint8Array | null> {\n return (await this.#inner.getSourceFileAsync(snapshot, project, file)) ?? null;\n }\n\n getStringType(snapshot: string, project: string): TypeResponse {\n return fromJson(this.#inner.getStringTypeJson(snapshot, project));\n }\n\n async getStringTypeAsync(snapshot: string, project: string): Promise<TypeResponse> {\n return fromJson(await this.#inner.getStringTypeJsonAsync(snapshot, project));\n }\n\n getTypeAtPosition(\n snapshot: string,\n project: string,\n file: string,\n position: number,\n ): TypeResponse | undefined {\n return (\n fromJson<TypeResponse | null>(\n this.#inner.getTypeAtPositionJson(snapshot, project, file, position),\n ) ?? undefined\n );\n }\n\n async getTypeAtPositionAsync(\n snapshot: string,\n project: string,\n file: string,\n position: number,\n ): Promise<TypeResponse | undefined> {\n return (\n fromJson<TypeResponse | null>(\n await this.#inner.getTypeAtPositionJsonAsync(snapshot, project, file, position),\n ) ?? undefined\n );\n }\n\n getSymbolAtPosition(\n snapshot: string,\n project: string,\n file: string,\n position: number,\n ): SymbolResponse | undefined {\n return (\n fromJson<SymbolResponse | null>(\n this.#inner.getSymbolAtPositionJson(snapshot, project, file, position),\n ) ?? undefined\n );\n }\n\n async getSymbolAtPositionAsync(\n snapshot: string,\n project: string,\n file: string,\n position: number,\n ): Promise<SymbolResponse | undefined> {\n return (\n fromJson<SymbolResponse | null>(\n await this.#inner.getSymbolAtPositionJsonAsync(snapshot, project, file, position),\n ) ?? undefined\n );\n }\n\n getTypeArguments(\n snapshot: string,\n project: string,\n typeHandle: string,\n objectFlags?: number,\n ): TypeResponse[] {\n return fromJson(this.#inner.getTypeArgumentsJson(snapshot, project, typeHandle, objectFlags));\n }\n\n async getTypeArgumentsAsync(\n snapshot: string,\n project: string,\n typeHandle: string,\n objectFlags?: number,\n ): Promise<TypeResponse[]> {\n return fromJson(\n await this.#inner.getTypeArgumentsJsonAsync(snapshot, project, typeHandle, objectFlags),\n );\n }\n\n getTypeOfSymbol(snapshot: string, project: string, symbol: string): TypeResponse | undefined {\n return (\n fromJson<TypeResponse | null>(this.#inner.getTypeOfSymbolJson(snapshot, project, symbol)) ??\n undefined\n );\n }\n\n async getTypeOfSymbolAsync(\n snapshot: string,\n project: string,\n symbol: string,\n ): Promise<TypeResponse | undefined> {\n return (\n fromJson<TypeResponse | null>(\n await this.#inner.getTypeOfSymbolJsonAsync(snapshot, project, symbol),\n ) ?? undefined\n );\n }\n\n getDeclaredTypeOfSymbol(\n snapshot: string,\n project: string,\n symbol: string,\n ): TypeResponse | undefined {\n return (\n fromJson<TypeResponse | null>(\n this.#inner.getDeclaredTypeOfSymbolJson(snapshot, project, symbol),\n ) ?? undefined\n );\n }\n\n async getDeclaredTypeOfSymbolAsync(\n snapshot: string,\n project: string,\n symbol: string,\n ): Promise<TypeResponse | undefined> {\n return (\n fromJson<TypeResponse | null>(\n await this.#inner.getDeclaredTypeOfSymbolJsonAsync(snapshot, project, symbol),\n ) ?? undefined\n );\n }\n\n typeToString(\n snapshot: string,\n project: string,\n typeHandle: string,\n location?: string,\n flags?: number,\n ): string {\n return this.#inner.typeToString(snapshot, project, typeHandle, location, flags);\n }\n\n async typeToStringAsync(\n snapshot: string,\n project: string,\n typeHandle: string,\n location?: string,\n flags?: number,\n ): Promise<string> {\n return this.#inner.typeToStringAsync(snapshot, project, typeHandle, location, flags);\n }\n\n callJson<T>(method: string, params?: unknown): T {\n return fromJson(this.#inner.callJson(method, params ? toJson(params) : undefined));\n }\n\n async callJsonAsync<T>(method: string, params?: unknown): Promise<T> {\n return fromJson(await this.#inner.callJsonAsync(method, params ? toJson(params) : undefined));\n }\n\n callBinary(method: string, params?: unknown): Uint8Array | null {\n return this.#inner.callBinary(method, params ? toJson(params) : undefined) ?? null;\n }\n\n async callBinaryAsync(method: string, params?: unknown): Promise<Uint8Array | null> {\n return (await this.#inner.callBinaryAsync(method, params ? toJson(params) : undefined)) ?? null;\n }\n\n releaseHandle(handle: string): void {\n this.#inner.releaseHandle(handle);\n }\n\n async releaseHandleAsync(handle: string): Promise<void> {\n await this.#inner.releaseHandleAsync(handle);\n }\n\n close(): void {\n this.#inner.close();\n }\n\n async closeAsync(): Promise<void> {\n await this.#inner.closeAsync();\n }\n}\n\nexport class CorsaVirtualDocument {\n readonly #inner: NativeVirtualDocument;\n\n private constructor(inner: NativeVirtualDocument) {\n this.#inner = inner;\n }\n\n static untitled(path: string, languageId: string, text: string): CorsaVirtualDocument {\n return new CorsaVirtualDocument(binding.TsgoVirtualDocument.untitled(path, languageId, text));\n }\n\n static inMemory(\n authority: string,\n path: string,\n languageId: string,\n text: string,\n ): CorsaVirtualDocument {\n return new CorsaVirtualDocument(\n binding.TsgoVirtualDocument.inMemory(authority, path, languageId, text),\n );\n }\n\n get uri(): string {\n return this.#inner.uri;\n }\n\n get languageId(): string {\n return this.#inner.languageId;\n }\n\n get version(): number {\n return this.#inner.version;\n }\n\n get text(): string {\n return this.#inner.text;\n }\n\n state(): VirtualDocumentState {\n return fromJson(this.#inner.stateJson());\n }\n\n replace(text: string): void {\n this.#inner.replace(text);\n }\n\n applyChanges(changes: VirtualChange[]): unknown[] {\n return fromJson(this.#inner.applyChangesJson(toJson(changes)));\n }\n}\n\nexport class CorsaDistributedOrchestrator {\n readonly #inner: NativeDistributedOrchestrator;\n\n constructor(nodeIds: string[]) {\n this.#inner = new binding.TsgoDistributedOrchestrator(nodeIds);\n }\n\n campaign(nodeId: string): number {\n return this.#inner.campaign(nodeId);\n }\n\n leaderId(): string | undefined {\n return this.#inner.leaderId() ?? undefined;\n }\n\n state<T>(): T | undefined {\n const value = this.#inner.stateJson();\n return value ? fromJson<T>(value) : undefined;\n }\n\n nodeState<T>(nodeId: string): T | undefined {\n const value = this.#inner.nodeStateJson(nodeId);\n return value ? fromJson<T>(value) : undefined;\n }\n\n document(nodeId: string, uri: string): VirtualDocumentState | undefined {\n const value = this.#inner.documentJson(nodeId, uri);\n return value ? fromJson<VirtualDocumentState>(value) : undefined;\n }\n\n openVirtualDocument(document: VirtualDocumentState): VirtualDocumentState {\n return fromJson(this.#inner.openVirtualDocumentJson(this.requireLeader(), toJson(document)));\n }\n\n changeVirtualDocument(uri: string, changes: VirtualChange[]): VirtualDocumentState {\n return fromJson(\n this.#inner.changeVirtualDocumentJson(this.requireLeader(), uri, toJson(changes)),\n );\n }\n\n closeVirtualDocument(uri: string): void {\n this.#inner.closeVirtualDocument(this.requireLeader(), uri);\n }\n\n private requireLeader(): string {\n const leaderId = this.leaderId();\n if (!leaderId) {\n throw new Error(\"raft leader has not been elected\");\n }\n return leaderId;\n }\n}\n\nexport {\n CorsaApiClient as TsgoApiClient,\n CorsaDistributedOrchestrator as TsgoDistributedOrchestrator,\n CorsaVirtualDocument as TsgoVirtualDocument,\n};\n\nexport default binding;\nexport const version = binding.version;\nexport type * from \"./types\";\n"],"mappings":";;AAmBA,MAAM,UACJ,aAAa,eAAe,aAAa,UAAU;AAOrD,SAAS,SAAY,OAAkB;CACrC,OAAO,KAAK,MAAM,MAAM;;AAG1B,SAAS,OAAO,OAAwB;CACtC,OAAO,KAAK,UAAU,SAAS,KAAK;;AAGtC,SAAgB,mBAAmB,OAAqC;CACtE,OAAO,QAAQ,mBAAmB,OAAO,MAAM,CAAC;;AAGlD,SAAgB,eAAe,OAAqC;CAClE,OAAO,QAAQ,eAAe,OAAO,MAAM,CAAC;;AAG9C,SAAgB,kBAAkB,UAAkB,MAA8C;CAChG,OAAO,SAAS,QAAQ,kBAAkB,UAAU,OAAO,KAAK,CAAC,CAAC;;AAGpE,SAAgB,sBAA4C;CAC1D,OAAO,SAAS,QAAQ,yBAAyB,CAAC;;AAGpD,SAAgB,iBAAiB,MAA6B;CAC5D,OAAO,QAAQ,iBAAiB,KAAK;;AAGvC,SAAgB,sBAAsB,MAAc,WAA6B;CAC/E,OAAO,QAAQ,sBAAsB,MAAM,UAAU;;AAGvD,SAAgB,cAAc,MAAwB;CACpD,OAAO,QAAQ,cAAc,KAAK;;AAGpC,SAAgB,sBAAsB,WAAuC;CAC3E,OAAO,QAAQ,sBAAsB,CAAC,GAAG,UAAU,CAAC;;AAGtD,SAAgB,sBAAsB,WAAuC;CAC3E,OAAO,QAAQ,sBAAsB,CAAC,GAAG,UAAU,CAAC;;AAGtD,SAAgB,sBAAsB,WAAuC;CAC3E,OAAO,QAAQ,sBAAsB,CAAC,GAAG,UAAU,CAAC;;AAGtD,SAAgB,mBAAmB,WAAuC;CACxE,OAAO,QAAQ,mBAAmB,CAAC,GAAG,UAAU,CAAC;;AAGnD,SAAgB,uBAAuB,WAAuC;CAC5E,OAAO,QAAQ,uBAAuB,CAAC,GAAG,UAAU,CAAC;;AAGvD,SAAgB,qBAAqB,WAAuC;CAC1E,OAAO,QAAQ,qBAAqB,CAAC,GAAG,UAAU,CAAC;;AAGrD,SAAgB,2BAA2B,WAAuC;CAChF,OAAO,QAAQ,2BAA2B,CAAC,GAAG,UAAU,CAAC;;AAG3D,SAAgB,uBACd,WACA,gBAAmC,EAAE,EAC5B;CACT,OAAO,QAAQ,uBAAuB,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,cAAc,CAAC;;AAG3E,SAAgB,qBACd,WACA,gBAAmC,EAAE,EAC5B;CACT,OAAO,QAAQ,qBAAqB,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,cAAc,CAAC;;AAGzE,MAAa,QAAQ,OAAO,OAAO;CACjC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD,CAAC;AAEF,IAAa,iBAAb,MAAa,eAAe;CAC1B;CAEA,YAAoB,OAAwB;EAC1C,KAAKA,SAAS;;CAGhB,OAAO,MAAM,SAA2C;EACtD,OAAO,IAAI,eAAe,QAAQ,cAAc,MAAM,OAAO,QAAQ,CAAC,CAAC;;CAGzE,aAAa,WAAW,SAAoD;EAC1E,OAAO,IAAI,eAAe,MAAM,QAAQ,wBAAwB,OAAO,QAAQ,CAAC,CAAC;;CAGnF,aAAiC;EAC/B,OAAO,SAAS,KAAKA,OAAO,gBAAgB,CAAC;;CAG/C,MAAM,kBAA+C;EACnD,OAAO,SAAS,MAAM,KAAKA,OAAO,qBAAqB,CAAC;;CAG1D,gBAAgB,MAA8B;EAC5C,OAAO,SAAS,KAAKA,OAAO,oBAAoB,KAAK,CAAC;;CAGxD,MAAM,qBAAqB,MAAuC;EAChE,OAAO,SAAS,MAAM,KAAKA,OAAO,yBAAyB,KAAK,CAAC;;CAGnE,eAAe,QAAuD;EACpE,OAAO,SAAS,KAAKA,OAAO,mBAAmB,SAAS,OAAO,OAAO,GAAG,KAAA,EAAU,CAAC;;CAGtF,MAAM,oBAAoB,QAAgE;EACxF,OAAO,SAAS,MAAM,KAAKA,OAAO,wBAAwB,SAAS,OAAO,OAAO,GAAG,KAAA,EAAU,CAAC;;CAGjG,cAAc,UAAkB,SAAiB,MAAiC;EAChF,OAAO,KAAKA,OAAO,cAAc,UAAU,SAAS,KAAK,IAAI;;CAG/D,MAAM,mBACJ,UACA,SACA,MAC4B;EAC5B,OAAQ,MAAM,KAAKA,OAAO,mBAAmB,UAAU,SAAS,KAAK,IAAK;;CAG5E,cAAc,UAAkB,SAA+B;EAC7D,OAAO,SAAS,KAAKA,OAAO,kBAAkB,UAAU,QAAQ,CAAC;;CAGnE,MAAM,mBAAmB,UAAkB,SAAwC;EACjF,OAAO,SAAS,MAAM,KAAKA,OAAO,uBAAuB,UAAU,QAAQ,CAAC;;CAG9E,kBACE,UACA,SACA,MACA,UAC0B;EAC1B,OACE,SACE,KAAKA,OAAO,sBAAsB,UAAU,SAAS,MAAM,SAAS,CACrE,IAAI,KAAA;;CAIT,MAAM,uBACJ,UACA,SACA,MACA,UACmC;EACnC,OACE,SACE,MAAM,KAAKA,OAAO,2BAA2B,UAAU,SAAS,MAAM,SAAS,CAChF,IAAI,KAAA;;CAIT,oBACE,UACA,SACA,MACA,UAC4B;EAC5B,OACE,SACE,KAAKA,OAAO,wBAAwB,UAAU,SAAS,MAAM,SAAS,CACvE,IAAI,KAAA;;CAIT,MAAM,yBACJ,UACA,SACA,MACA,UACqC;EACrC,OACE,SACE,MAAM,KAAKA,OAAO,6BAA6B,UAAU,SAAS,MAAM,SAAS,CAClF,IAAI,KAAA;;CAIT,iBACE,UACA,SACA,YACA,aACgB;EAChB,OAAO,SAAS,KAAKA,OAAO,qBAAqB,UAAU,SAAS,YAAY,YAAY,CAAC;;CAG/F,MAAM,sBACJ,UACA,SACA,YACA,aACyB;EACzB,OAAO,SACL,MAAM,KAAKA,OAAO,0BAA0B,UAAU,SAAS,YAAY,YAAY,CACxF;;CAGH,gBAAgB,UAAkB,SAAiB,QAA0C;EAC3F,OACE,SAA8B,KAAKA,OAAO,oBAAoB,UAAU,SAAS,OAAO,CAAC,IACzF,KAAA;;CAIJ,MAAM,qBACJ,UACA,SACA,QACmC;EACnC,OACE,SACE,MAAM,KAAKA,OAAO,yBAAyB,UAAU,SAAS,OAAO,CACtE,IAAI,KAAA;;CAIT,wBACE,UACA,SACA,QAC0B;EAC1B,OACE,SACE,KAAKA,OAAO,4BAA4B,UAAU,SAAS,OAAO,CACnE,IAAI,KAAA;;CAIT,MAAM,6BACJ,UACA,SACA,QACmC;EACnC,OACE,SACE,MAAM,KAAKA,OAAO,iCAAiC,UAAU,SAAS,OAAO,CAC9E,IAAI,KAAA;;CAIT,aACE,UACA,SACA,YACA,UACA,OACQ;EACR,OAAO,KAAKA,OAAO,aAAa,UAAU,SAAS,YAAY,UAAU,MAAM;;CAGjF,MAAM,kBACJ,UACA,SACA,YACA,UACA,OACiB;EACjB,OAAO,KAAKA,OAAO,kBAAkB,UAAU,SAAS,YAAY,UAAU,MAAM;;CAGtF,SAAY,QAAgB,QAAqB;EAC/C,OAAO,SAAS,KAAKA,OAAO,SAAS,QAAQ,SAAS,OAAO,OAAO,GAAG,KAAA,EAAU,CAAC;;CAGpF,MAAM,cAAiB,QAAgB,QAA8B;EACnE,OAAO,SAAS,MAAM,KAAKA,OAAO,cAAc,QAAQ,SAAS,OAAO,OAAO,GAAG,KAAA,EAAU,CAAC;;CAG/F,WAAW,QAAgB,QAAqC;EAC9D,OAAO,KAAKA,OAAO,WAAW,QAAQ,SAAS,OAAO,OAAO,GAAG,KAAA,EAAU,IAAI;;CAGhF,MAAM,gBAAgB,QAAgB,QAA8C;EAClF,OAAQ,MAAM,KAAKA,OAAO,gBAAgB,QAAQ,SAAS,OAAO,OAAO,GAAG,KAAA,EAAU,IAAK;;CAG7F,cAAc,QAAsB;EAClC,KAAKA,OAAO,cAAc,OAAO;;CAGnC,MAAM,mBAAmB,QAA+B;EACtD,MAAM,KAAKA,OAAO,mBAAmB,OAAO;;CAG9C,QAAc;EACZ,KAAKA,OAAO,OAAO;;CAGrB,MAAM,aAA4B;EAChC,MAAM,KAAKA,OAAO,YAAY;;;AAIlC,IAAa,uBAAb,MAAa,qBAAqB;CAChC;CAEA,YAAoB,OAA8B;EAChD,KAAKA,SAAS;;CAGhB,OAAO,SAAS,MAAc,YAAoB,MAAoC;EACpF,OAAO,IAAI,qBAAqB,QAAQ,oBAAoB,SAAS,MAAM,YAAY,KAAK,CAAC;;CAG/F,OAAO,SACL,WACA,MACA,YACA,MACsB;EACtB,OAAO,IAAI,qBACT,QAAQ,oBAAoB,SAAS,WAAW,MAAM,YAAY,KAAK,CACxE;;CAGH,IAAI,MAAc;EAChB,OAAO,KAAKA,OAAO;;CAGrB,IAAI,aAAqB;EACvB,OAAO,KAAKA,OAAO;;CAGrB,IAAI,UAAkB;EACpB,OAAO,KAAKA,OAAO;;CAGrB,IAAI,OAAe;EACjB,OAAO,KAAKA,OAAO;;CAGrB,QAA8B;EAC5B,OAAO,SAAS,KAAKA,OAAO,WAAW,CAAC;;CAG1C,QAAQ,MAAoB;EAC1B,KAAKA,OAAO,QAAQ,KAAK;;CAG3B,aAAa,SAAqC;EAChD,OAAO,SAAS,KAAKA,OAAO,iBAAiB,OAAO,QAAQ,CAAC,CAAC;;;AAIlE,IAAa,+BAAb,MAA0C;CACxC;CAEA,YAAY,SAAmB;EAC7B,KAAKA,SAAS,IAAI,QAAQ,4BAA4B,QAAQ;;CAGhE,SAAS,QAAwB;EAC/B,OAAO,KAAKA,OAAO,SAAS,OAAO;;CAGrC,WAA+B;EAC7B,OAAO,KAAKA,OAAO,UAAU,IAAI,KAAA;;CAGnC,QAA0B;EACxB,MAAM,QAAQ,KAAKA,OAAO,WAAW;EACrC,OAAO,QAAQ,SAAY,MAAM,GAAG,KAAA;;CAGtC,UAAa,QAA+B;EAC1C,MAAM,QAAQ,KAAKA,OAAO,cAAc,OAAO;EAC/C,OAAO,QAAQ,SAAY,MAAM,GAAG,KAAA;;CAGtC,SAAS,QAAgB,KAA+C;EACtE,MAAM,QAAQ,KAAKA,OAAO,aAAa,QAAQ,IAAI;EACnD,OAAO,QAAQ,SAA+B,MAAM,GAAG,KAAA;;CAGzD,oBAAoB,UAAsD;EACxE,OAAO,SAAS,KAAKA,OAAO,wBAAwB,KAAK,eAAe,EAAE,OAAO,SAAS,CAAC,CAAC;;CAG9F,sBAAsB,KAAa,SAAgD;EACjF,OAAO,SACL,KAAKA,OAAO,0BAA0B,KAAK,eAAe,EAAE,KAAK,OAAO,QAAQ,CAAC,CAClF;;CAGH,qBAAqB,KAAmB;EACtC,KAAKA,OAAO,qBAAqB,KAAK,eAAe,EAAE,IAAI;;CAG7D,gBAAgC;EAC9B,MAAM,WAAW,KAAK,UAAU;EAChC,IAAI,CAAC,UACH,MAAM,IAAI,MAAM,mCAAmC;EAErD,OAAO;;;AAWX,MAAa,UAAU,QAAQ"}
|
package/index.d.ts
CHANGED
|
@@ -1,90 +1,64 @@
|
|
|
1
|
-
/* tslint:disable */
|
|
2
|
-
/* eslint-disable */
|
|
3
|
-
|
|
4
1
|
/* auto-generated by NAPI-RS */
|
|
5
|
-
|
|
6
|
-
export declare function runNativeLintRule(ruleName: string, nodeJson: string): string
|
|
7
|
-
export declare function nativeLintRuleMetasJson(): string
|
|
8
|
-
export declare function isUnsafeAssignment(inputJson: string): boolean
|
|
9
|
-
export declare function isUnsafeReturn(inputJson: string): boolean
|
|
10
|
-
export declare function classifyTypeText(text?: string | undefined | null): string
|
|
11
|
-
export declare function splitTopLevelTypeText(text: string, delimiter: string): Array<string>
|
|
12
|
-
export declare function splitTypeText(text: string): Array<string>
|
|
13
|
-
export declare function isStringLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
14
|
-
export declare function isNumberLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
15
|
-
export declare function isBigIntLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
16
|
-
export declare function isAnyLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
17
|
-
export declare function isUnknownLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
18
|
-
export declare function isArrayLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
19
|
-
export declare function isStringArrayLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
20
|
-
export declare function isPromiseLikeTypeTexts(typeTexts: Array<string>, propertyNames?: Array<string> | undefined | null): boolean
|
|
21
|
-
export declare function isErrorLikeTypeTexts(typeTexts: Array<string>, propertyNames?: Array<string> | undefined | null): boolean
|
|
22
|
-
/**
|
|
23
|
-
* Returns the package version exposed by the native addon.
|
|
24
|
-
*
|
|
25
|
-
* # Examples
|
|
26
|
-
*
|
|
27
|
-
* ```
|
|
28
|
-
* assert_eq!(corsa_node::version(), env!("CARGO_PKG_VERSION"));
|
|
29
|
-
* ```
|
|
30
|
-
*/
|
|
31
|
-
export declare function version(): string
|
|
2
|
+
/* eslint-disable */
|
|
32
3
|
/** Thin synchronous wrapper around the Rust stdio API client. */
|
|
33
4
|
export declare class TsgoApiClient {
|
|
34
5
|
/** Spawns a new client from a JSON-encoded spawn config. */
|
|
35
6
|
static spawn(optionsJson: string): TsgoApiClient
|
|
36
7
|
/** Calls `initialize` and returns the raw JSON response. */
|
|
37
8
|
initializeJson(): string
|
|
9
|
+
/** Calls `initialize` without blocking the JavaScript event loop. */
|
|
10
|
+
initializeJsonAsync(): Promise<string>
|
|
38
11
|
/** Parses a `tsconfig` through tsgo and returns the JSON response. */
|
|
39
12
|
parseConfigFileJson(file: string): string
|
|
13
|
+
/** Parses a `tsconfig` on a libuv worker thread. */
|
|
14
|
+
parseConfigFileJsonAsync(file: string): Promise<string>
|
|
40
15
|
/** Applies file changes and returns a serialized snapshot record. */
|
|
41
16
|
updateSnapshotJson(paramsJson?: string | undefined | null): string
|
|
17
|
+
/** Applies file changes on a libuv worker thread. */
|
|
18
|
+
updateSnapshotJsonAsync(paramsJson?: string | undefined | null): Promise<string>
|
|
42
19
|
/** Fetches a source file through the binary endpoint. */
|
|
43
20
|
getSourceFile(snapshot: string, project: string, file: string): Buffer | null
|
|
21
|
+
/** Fetches a source file on a libuv worker thread. */
|
|
22
|
+
getSourceFileAsync(snapshot: string, project: string, file: string): Promise<Buffer | null>
|
|
44
23
|
/** Resolves the intrinsic string type for a project. */
|
|
45
24
|
getStringTypeJson(snapshot: string, project: string): string
|
|
25
|
+
getStringTypeJsonAsync(snapshot: string, project: string): Promise<string>
|
|
46
26
|
/** Resolves the checker type visible at a file position. */
|
|
47
27
|
getTypeAtPositionJson(snapshot: string, project: string, file: string, position: number): string
|
|
28
|
+
getTypeAtPositionJsonAsync(snapshot: string, project: string, file: string, position: number): Promise<string>
|
|
48
29
|
/** Resolves the checker symbol visible at a file position. */
|
|
49
30
|
getSymbolAtPositionJson(snapshot: string, project: string, file: string, position: number): string
|
|
31
|
+
getSymbolAtPositionJsonAsync(snapshot: string, project: string, file: string, position: number): Promise<string>
|
|
50
32
|
/** Resolves type arguments for type-reference objects and returns [] otherwise. */
|
|
51
33
|
getTypeArgumentsJson(snapshot: string, project: string, typeHandle: string, objectFlags?: number | undefined | null): string
|
|
34
|
+
getTypeArgumentsJsonAsync(snapshot: string, project: string, typeHandle: string, objectFlags?: number | undefined | null): Promise<string>
|
|
52
35
|
/** Resolves the apparent checker type of a symbol. */
|
|
53
36
|
getTypeOfSymbolJson(snapshot: string, project: string, symbol: string): string
|
|
37
|
+
getTypeOfSymbolJsonAsync(snapshot: string, project: string, symbol: string): Promise<string>
|
|
54
38
|
/** Resolves the declared checker type of a symbol. */
|
|
55
39
|
getDeclaredTypeOfSymbolJson(snapshot: string, project: string, symbol: string): string
|
|
40
|
+
getDeclaredTypeOfSymbolJsonAsync(snapshot: string, project: string, symbol: string): Promise<string>
|
|
56
41
|
/** Renders a type back to a string representation. */
|
|
57
42
|
typeToString(snapshot: string, project: string, typeHandle: string, location?: string | undefined | null, flags?: number | undefined | null): string
|
|
43
|
+
typeToStringAsync(snapshot: string, project: string, typeHandle: string, location?: string | undefined | null, flags?: number | undefined | null): Promise<string>
|
|
58
44
|
/** Sends an arbitrary JSON endpoint request. */
|
|
59
45
|
callJson(method: string, paramsJson?: string | undefined | null): string
|
|
46
|
+
/** Sends an arbitrary JSON endpoint request on a libuv worker thread. */
|
|
47
|
+
callJsonAsync(method: string, paramsJson?: string | undefined | null): Promise<string>
|
|
60
48
|
/** Sends an arbitrary binary endpoint request. */
|
|
61
49
|
callBinary(method: string, paramsJson?: string | undefined | null): Buffer | null
|
|
50
|
+
/** Sends an arbitrary binary endpoint request on a libuv worker thread. */
|
|
51
|
+
callBinaryAsync(method: string, paramsJson?: string | undefined | null): Promise<Buffer | null>
|
|
62
52
|
/** Releases a tsgo handle explicitly. */
|
|
63
53
|
releaseHandle(handle: string): void
|
|
54
|
+
/** Releases a tsgo handle on a libuv worker thread. */
|
|
55
|
+
releaseHandleAsync(handle: string): Promise<void>
|
|
64
56
|
/** Closes the underlying worker process. */
|
|
65
57
|
close(): void
|
|
58
|
+
/** Closes the underlying worker process on a libuv worker thread. */
|
|
59
|
+
closeAsync(): Promise<void>
|
|
66
60
|
}
|
|
67
|
-
|
|
68
|
-
export declare class TsgoVirtualDocument {
|
|
69
|
-
/** Creates an `untitled:` document. */
|
|
70
|
-
static untitled(path: string, languageId: string, text: string): TsgoVirtualDocument
|
|
71
|
-
/** Creates an in-memory `corsa://` document. */
|
|
72
|
-
static inMemory(authority: string, path: string, languageId: string, text: string): TsgoVirtualDocument
|
|
73
|
-
/** Returns the document URI. */
|
|
74
|
-
get uri(): string
|
|
75
|
-
/** Returns the language identifier. */
|
|
76
|
-
get languageId(): string
|
|
77
|
-
/** Returns the current version number. */
|
|
78
|
-
get version(): number
|
|
79
|
-
/** Returns the current full text. */
|
|
80
|
-
get text(): string
|
|
81
|
-
/** Serializes the full document state. */
|
|
82
|
-
stateJson(): string
|
|
83
|
-
/** Replaces the entire document text. */
|
|
84
|
-
replace(text: string): void
|
|
85
|
-
/** Applies a batch of JSON-encoded LSP changes. */
|
|
86
|
-
applyChangesJson(changesJson: string): string
|
|
87
|
-
}
|
|
61
|
+
|
|
88
62
|
/** N-API wrapper for the distributed orchestration layer. */
|
|
89
63
|
export declare class TsgoDistributedOrchestrator {
|
|
90
64
|
/** Creates a new in-process Raft cluster. */
|
|
@@ -106,3 +80,71 @@ export declare class TsgoDistributedOrchestrator {
|
|
|
106
80
|
/** Removes a replicated document. */
|
|
107
81
|
closeVirtualDocument(leaderId: string, uri: string): void
|
|
108
82
|
}
|
|
83
|
+
|
|
84
|
+
/** Mutable virtual document mirrored through the LSP overlay layer. */
|
|
85
|
+
export declare class TsgoVirtualDocument {
|
|
86
|
+
/** Creates an `untitled:` document. */
|
|
87
|
+
static untitled(path: string, languageId: string, text: string): TsgoVirtualDocument
|
|
88
|
+
/** Creates an in-memory `corsa://` document. */
|
|
89
|
+
static inMemory(authority: string, path: string, languageId: string, text: string): TsgoVirtualDocument
|
|
90
|
+
/** Returns the document URI. */
|
|
91
|
+
get uri(): string
|
|
92
|
+
/** Returns the language identifier. */
|
|
93
|
+
get languageId(): string
|
|
94
|
+
/** Returns the current version number. */
|
|
95
|
+
get version(): number
|
|
96
|
+
/** Returns the current full text. */
|
|
97
|
+
get text(): string
|
|
98
|
+
/** Serializes the full document state. */
|
|
99
|
+
stateJson(): string
|
|
100
|
+
/** Replaces the entire document text. */
|
|
101
|
+
replace(text: string): void
|
|
102
|
+
/** Applies a batch of JSON-encoded LSP changes. */
|
|
103
|
+
applyChangesJson(changesJson: string): string
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export declare function classifyTypeText(text?: string | undefined | null): string
|
|
107
|
+
|
|
108
|
+
export declare function isAnyLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
109
|
+
|
|
110
|
+
export declare function isArrayLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
111
|
+
|
|
112
|
+
export declare function isBigIntLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
113
|
+
|
|
114
|
+
export declare function isErrorLikeTypeTexts(typeTexts: Array<string>, propertyNames?: Array<string> | undefined | null): boolean
|
|
115
|
+
|
|
116
|
+
export declare function isNumberLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
117
|
+
|
|
118
|
+
export declare function isPromiseLikeTypeTexts(typeTexts: Array<string>, propertyNames?: Array<string> | undefined | null): boolean
|
|
119
|
+
|
|
120
|
+
export declare function isStringArrayLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
121
|
+
|
|
122
|
+
export declare function isStringLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
123
|
+
|
|
124
|
+
export declare function isUnknownLikeTypeTexts(typeTexts: Array<string>): boolean
|
|
125
|
+
|
|
126
|
+
export declare function isUnsafeAssignment(inputJson: string): boolean
|
|
127
|
+
|
|
128
|
+
export declare function isUnsafeReturn(inputJson: string): boolean
|
|
129
|
+
|
|
130
|
+
export declare function nativeLintRuleMetasJson(): string
|
|
131
|
+
|
|
132
|
+
export declare function runNativeLintRule(ruleName: string, nodeJson: string): string
|
|
133
|
+
|
|
134
|
+
/** Spawns a new client on a libuv worker thread. */
|
|
135
|
+
export declare function spawnTsgoApiClientAsync(optionsJson: string): Promise<TsgoApiClient>
|
|
136
|
+
|
|
137
|
+
export declare function splitTopLevelTypeText(text: string, delimiter: string): Array<string>
|
|
138
|
+
|
|
139
|
+
export declare function splitTypeText(text: string): Array<string>
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Returns the package version exposed by the native addon.
|
|
143
|
+
*
|
|
144
|
+
* # Examples
|
|
145
|
+
*
|
|
146
|
+
* ```
|
|
147
|
+
* assert_eq!(corsa_node::version(), env!("CARGO_PKG_VERSION"));
|
|
148
|
+
* ```
|
|
149
|
+
*/
|
|
150
|
+
export declare function version(): string
|