/**
 * @license
 * Copyright 2022-2026 Greg Lauckhart <greg@lauckhart.com>
 * SPDX-License-Identifier: Apache-2.0
 */
/**
 * SGR (select graphics rendition) opcodes.
 *
 * SGR is a CSI (ANSI "control sequence introducer", or ESC-[) sequence terminated by "m".
 */
export declare enum SgrOpcode {
    reset = 0,
    bold = 1,
    dim = 2,
    italic = 3,
    underline = 4,
    slowBlink = 5,
    fastBlink = 6,
    invert = 7,
    conceal = 8,
    strike = 9,
    normalFont = 10,
    gothic = 20,
    doubleUnderline = 21,
    normalIntensity = 22,
    notItalic = 23,
    notUnderline = 24,
    notBlink = 25,
    notInvert = 27,
    notConceal = 28,
    notStrike = 29,
    normalFg = 39,
    normalBg = 49
}
/**
 * SGR categories.
 *
 * Each of these is cleared via a single opcode.  Except for intensity (dim/bold) only one value may be in effect.
 */
export declare enum SgrCategory {
    reset = 0,
    intensity = 1,
    italic = 2,
    underline = 3,
    blink = 4,
    invert = 5,
    conceal = 6,
    strike = 7,
    font = 8,
    fg = 9,
    bg = 10
}
/**
 * Masks for meaningful groups of CSI codes.
 */
export declare enum SgrOpcodeBlock {
    font = 10,
    fg = 30,
    bg = 40,
    fgBright = 90,
    bgBright = 100
}
/**
 * Color selectors.
 */
export declare enum Color {
    black = 0,
    red = 1,
    green = 2,
    yellow = 3,
    blue = 4,
    magenta = 5,
    cyan = 6,
    white = 7,
    extended = 8
}
/**
 * Extended color subselectors.
 */
export declare enum ExtendedColor {
    rgb = 2,
    eightBit = 5
}
/**
 * Mapping of opcodes to categories.
 */
export declare const SgrOpcodeToCategory: (number | undefined)[];
/**
 * Mapping of opcodes to opcodes that disable the attribute.
 */
export declare const SgrOpcodeToUndoOpcode: (number | undefined)[];
export interface EightBitColor {
    color: number;
}
export interface RgbColor {
    r?: number;
    g?: number;
    b?: number;
}
//# sourceMappingURL=sgr.d.ts.map