This commit upgrades TypeScript to the latest version 5.3 and introduces `verbatimModuleSyntax` in line with the official Vue guide recommendatinos (vuejs/docs#2592). By enforcing `import type` for type-only imports, this commit improves code clarity and supports tooling optimization, ensuring imports are only bundled when necessary for runtime. Changes: - Bump TypeScript to 5.3.3 across the project. - Adjust import statements to utilize `import type` where applicable, promoting cleaner and more efficient code.
24 lines
708 B
TypeScript
24 lines
708 B
TypeScript
import type { CodeRunError } from '@/application/CodeRunner/CodeRunner';
|
|
|
|
export interface ScriptDirectoryProvider {
|
|
provideScriptDirectory(): Promise<ScriptDirectoryOutcome>;
|
|
}
|
|
|
|
export type ScriptDirectoryOutcome = SuccessfulDirectoryCreation | FailedDirectoryCreation;
|
|
|
|
interface ScriptDirectoryCreationStatus {
|
|
readonly success: boolean;
|
|
readonly directoryAbsolutePath?: string;
|
|
readonly error?: CodeRunError;
|
|
}
|
|
|
|
interface SuccessfulDirectoryCreation extends ScriptDirectoryCreationStatus {
|
|
readonly success: true;
|
|
readonly directoryAbsolutePath: string;
|
|
}
|
|
|
|
interface FailedDirectoryCreation extends ScriptDirectoryCreationStatus {
|
|
readonly success: false;
|
|
readonly error: CodeRunError;
|
|
}
|