mermaid-animator/src/gifenc.d.ts

58 lines
1.4 KiB
TypeScript

declare module 'gifenc' {
interface GIFEncoderInstance {
writeFrame(
index: Uint8Array,
width: number,
height: number,
options?: {
palette?: number[][];
delay?: number;
repeat?: number;
transparent?: boolean;
transparentIndex?: number;
dispose?: number;
first?: boolean;
colorDepth?: number;
}
): void;
finish(): void;
bytes(): Uint8Array;
bytesView(): Uint8Array;
reset(): void;
readonly buffer: ArrayBuffer;
}
interface Gifenc {
GIFEncoder(): GIFEncoderInstance;
quantize(
data: Uint8Array,
maxColors: number,
options?: {
format?: 'rgb565' | 'rgb444' | 'rgba4444';
oneBitAlpha?: boolean | number;
clearAlpha?: boolean;
clearAlphaColor?: number;
clearAlphaThreshold?: number;
}
): number[][];
applyPalette(
data: Uint8Array,
palette: number[][],
format?: 'rgb565' | 'rgb444' | 'rgba4444'
): Uint8Array;
nearestColorIndex(palette: number[][], color: number[]): number;
prequantize(
data: Uint8Array,
options?: { roundRGB?: number; roundAlpha?: number; oneBitAlpha?: boolean | number }
): void;
snapColorsToPalette(
palette: number[][],
knownColors: number[][],
threshold?: number
): void;
}
const gifenc: Gifenc;
export default gifenc;
}