import { Done } from '../../../../../Class/Functional/Done';
import { Holder } from '../../../../../Class/Holder';
import { System } from '../../../../../system';
import { CA } from '../../../../../types/interface/CA';
import { ID } from '../../../../../types/interface/ID';
import { J } from '../../../../../types/interface/J';
export interface I<T> {
    canvas: CA;
    x: number;
    y: number;
    width: number;
    height: number;
    opt: {};
    done: any;
    any: any;
}
export interface O<T> {
    image: J & ID;
}
export default class GetImageData<T> extends Holder<I<T>, O<T>> {
    constructor(system: System);
    f({ canvas, x, y, width, height, opt }: I<T>, done: Done<O<T>>): Promise<void>;
}
