DefinitelyTyped/types/terminal-kit/TextBuffer.d.ts
2019-01-25 21:48:26 +04:00

95 lines
2.1 KiB
TypeScript

import ScreenBuffer = require("./ScreenBuffer");
import Rect = require("./Rect");
export as namespace TextBuffer;
declare class TextBuffer {
readonly x: number;
readonly y: number;
constructor(options: TextBuffer.Options);
getText(): string;
setText(text: string): void;
getHidden(): boolean;
setHidden(state: boolean): void;
getContentSize(): { width: number; height: number };
setEmptyCellAttr(attr: ScreenBuffer.Attributes | number): void;
setAttrAt(attr: ScreenBuffer.Attributes | number, x: number, y: number): void;
setAttrCodeAt(attr: number, x: number, y: number): void;
setAttrRegion(
attr: ScreenBuffer.Attributes | number,
region?: Rect.Region
): void;
setAttrCodeRegion(attr: number, region?: Rect.Region): void;
getMisc(): any;
getMiscAt(x: number, y: number): any;
moveTo(x: number, y: number): void;
moveToColumn(x: number): void;
moveToLine(y: number): void;
moveToRow(y: number): void;
move(x: number, y: number): void;
moveUp(): void;
moveDown(): void;
moveLeft(): void;
moveRight(): void;
moveForward(justSkipNullCells: boolean): void;
moveBackward(justSkipNullCells: boolean): void;
moveToEndOfLine(): void;
moveInBound(ignoreCx: boolean): void;
insert(text: string, attr?: ScreenBuffer.Attributes | number): void;
delete(n?: number): void;
bulkDelete(n?: number): void;
newLine(): void;
joinLine(): void;
iterate(
options: { finalCall: boolean },
callback: (
cellData: {
offset: number;
x: number;
y: number;
text: string;
attr: number;
misc: any;
}
) => void
): void;
draw(options?: ScreenBuffer.DrawOptions): void;
drawCursor(options?: { dst: ScreenBuffer }): void;
load(filepath: string, callback: (error?: any) => void): void;
save(filepath: string, callback: (error?: any) => void): void;
}
export = TextBuffer;
declare namespace TextBuffer {
interface Options {
dst: ScreenBuffer;
width?: number;
height?: number;
x?: number;
y?: number;
tabWidth?: number;
forceInBound?: number;
hidden?: boolean;
wrap?: boolean;
}
}