@e-mc/types
Version:
Type definitions for E-mc.
55 lines (45 loc) • 1.17 kB
TypeScript
import type { MimeTypeAction } from './squared';
import type { BroadcastValue, LogTime } from './logger';
import type { ImageModule } from './settings';
export interface CommandData {
value: string;
resize?: ResizeData | null;
crop?: CropData | null;
rotate?: RotateData | null;
quality?: QualityData | null;
method?: MethodData | null;
opacity?: number;
}
export interface RotateData {
values: number[];
color: number;
}
export interface ResizeData extends Dimension {
mode: string;
color: number;
align: [string | undefined, string | undefined];
algorithm?: string;
}
export interface CropData extends Point, Dimension {}
export interface QualityData {
value: number;
nearLossless: number;
method: number;
preset?: string;
}
export interface TransformOptions extends MimeTypeAction {
tempFile?: boolean;
startTime?: LogTime;
module?: ImageModule;
broadcastId?: BroadcastValue;
cache?: boolean;
}
export interface Point {
x: number;
y: number;
}
export interface Dimension {
width: number;
height: number;
}
export type MethodData = [string, unknown[]?][];