191 lines
3.9 KiB
TypeScript
191 lines
3.9 KiB
TypeScript
export interface CSPair { // eslint-disable-line @typescript-eslint/naming-convention
|
|
/**
|
|
The ANSI terminal control sequence for starting this style.
|
|
*/
|
|
readonly open: string;
|
|
|
|
/**
|
|
The ANSI terminal control sequence for ending this style.
|
|
*/
|
|
readonly close: string;
|
|
}
|
|
|
|
export interface ColorBase {
|
|
/**
|
|
The ANSI terminal control sequence for ending this color.
|
|
*/
|
|
readonly close: string;
|
|
|
|
ansi(code: number): string;
|
|
|
|
ansi256(code: number): string;
|
|
|
|
ansi16m(red: number, green: number, blue: number): string;
|
|
}
|
|
|
|
export interface Modifier {
|
|
/**
|
|
Resets the current color chain.
|
|
*/
|
|
readonly reset: CSPair;
|
|
|
|
/**
|
|
Make text bold.
|
|
*/
|
|
readonly bold: CSPair;
|
|
|
|
/**
|
|
Emitting only a small amount of light.
|
|
*/
|
|
readonly dim: CSPair;
|
|
|
|
/**
|
|
Make text italic. (Not widely supported)
|
|
*/
|
|
readonly italic: CSPair;
|
|
|
|
/**
|
|
Make text underline. (Not widely supported)
|
|
*/
|
|
readonly underline: CSPair;
|
|
|
|
/**
|
|
Make text overline.
|
|
|
|
Supported on VTE-based terminals, the GNOME terminal, mintty, and Git Bash.
|
|
*/
|
|
readonly overline: CSPair;
|
|
|
|
/**
|
|
Inverse background and foreground colors.
|
|
*/
|
|
readonly inverse: CSPair;
|
|
|
|
/**
|
|
Prints the text, but makes it invisible.
|
|
*/
|
|
readonly hidden: CSPair;
|
|
|
|
/**
|
|
Puts a horizontal line through the center of the text. (Not widely supported)
|
|
*/
|
|
readonly strikethrough: CSPair;
|
|
}
|
|
|
|
export interface ForegroundColor {
|
|
readonly black: CSPair;
|
|
readonly red: CSPair;
|
|
readonly green: CSPair;
|
|
readonly yellow: CSPair;
|
|
readonly blue: CSPair;
|
|
readonly cyan: CSPair;
|
|
readonly magenta: CSPair;
|
|
readonly white: CSPair;
|
|
|
|
/**
|
|
Alias for `blackBright`.
|
|
*/
|
|
readonly gray: CSPair;
|
|
|
|
/**
|
|
Alias for `blackBright`.
|
|
*/
|
|
readonly grey: CSPair;
|
|
|
|
readonly blackBright: CSPair;
|
|
readonly redBright: CSPair;
|
|
readonly greenBright: CSPair;
|
|
readonly yellowBright: CSPair;
|
|
readonly blueBright: CSPair;
|
|
readonly cyanBright: CSPair;
|
|
readonly magentaBright: CSPair;
|
|
readonly whiteBright: CSPair;
|
|
}
|
|
|
|
export interface BackgroundColor {
|
|
readonly bgBlack: CSPair;
|
|
readonly bgRed: CSPair;
|
|
readonly bgGreen: CSPair;
|
|
readonly bgYellow: CSPair;
|
|
readonly bgBlue: CSPair;
|
|
readonly bgCyan: CSPair;
|
|
readonly bgMagenta: CSPair;
|
|
readonly bgWhite: CSPair;
|
|
|
|
/**
|
|
Alias for `bgBlackBright`.
|
|
*/
|
|
readonly bgGray: CSPair;
|
|
|
|
/**
|
|
Alias for `bgBlackBright`.
|
|
*/
|
|
readonly bgGrey: CSPair;
|
|
|
|
readonly bgBlackBright: CSPair;
|
|
readonly bgRedBright: CSPair;
|
|
readonly bgGreenBright: CSPair;
|
|
readonly bgYellowBright: CSPair;
|
|
readonly bgBlueBright: CSPair;
|
|
readonly bgCyanBright: CSPair;
|
|
readonly bgMagentaBright: CSPair;
|
|
readonly bgWhiteBright: CSPair;
|
|
}
|
|
|
|
export interface ConvertColor {
|
|
/**
|
|
Convert from the RGB color space to the ANSI 256 color space.
|
|
|
|
@param red - (`0...255`)
|
|
@param green - (`0...255`)
|
|
@param blue - (`0...255`)
|
|
*/
|
|
rgbToAnsi256(red: number, green: number, blue: number): number;
|
|
|
|
/**
|
|
Convert from the RGB HEX color space to the RGB color space.
|
|
|
|
@param hex - A hexadecimal string containing RGB data.
|
|
*/
|
|
hexToRgb(hex: string): [red: number, green: number, blue: number];
|
|
|
|
/**
|
|
Convert from the RGB HEX color space to the ANSI 256 color space.
|
|
|
|
@param hex - A hexadecimal string containing RGB data.
|
|
*/
|
|
hexToAnsi256(hex: string): number;
|
|
|
|
/**
|
|
Convert from the ANSI 256 color space to the ANSI 16 color space.
|
|
|
|
@param code - A number representing the ANSI 256 color.
|
|
*/
|
|
ansi256ToAnsi(code: number): number;
|
|
|
|
/**
|
|
Convert from the RGB color space to the ANSI 16 color space.
|
|
|
|
@param red - (`0...255`)
|
|
@param green - (`0...255`)
|
|
@param blue - (`0...255`)
|
|
*/
|
|
rgbToAnsi(red: number, green: number, blue: number): number;
|
|
|
|
/**
|
|
Convert from the RGB HEX color space to the ANSI 16 color space.
|
|
|
|
@param hex - A hexadecimal string containing RGB data.
|
|
*/
|
|
hexToAnsi(hex: string): number;
|
|
}
|
|
|
|
declare const ansiStyles: {
|
|
readonly modifier: Modifier;
|
|
readonly color: ColorBase & ForegroundColor;
|
|
readonly bgColor: ColorBase & BackgroundColor;
|
|
readonly codes: ReadonlyMap<number, number>;
|
|
} & ForegroundColor & BackgroundColor & Modifier & ConvertColor;
|
|
|
|
export default ansiStyles;
|