@kui-shell/core
Version:
An Electron-based shell for cloud-native development
18 lines (17 loc) • 677 B
TypeScript
export interface Abortable {
abort(signal?: string): void;
}
export interface Resizable {
resize(rows: number, cols: number): void;
}
export declare function isResizable(job: Partial<Resizable>): job is Resizable;
export interface FlowControllable {
xon(): void;
xoff(): void;
write(data: string): void;
}
export type Suspendable = Omit<FlowControllable, 'write'>;
/** in the future, a WatchableJob may be more than Abortable, e.g. Suspendable */
export type WatchableJob = Abortable & Partial<Suspendable>;
export declare function isSuspendable(watch: Partial<Suspendable>): () => void;
export type Job = Abortable & FlowControllable & Partial<Resizable>;