/** * utils/types.ts * * @author CismonX * @license MIT */ import * as vscode from 'vscode'; export type Optional = T | undefined; export type Operator = (arg: T) => T; export type Range = { start: number, end: number }; export type NamedLine = { name: string, line: number }; export type ExecResult = { data?: string, error: string }; export type FoldingRange = vscode.FoldingRange & { name: string, detail: string }; export function isDefined(value: Optional): value is T { return value !== undefined; }