Box.d.ts 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import { IBoundingBox } from './BoundingBox';
  2. import { IDimensions } from './Dimensions';
  3. import { Point } from './Point';
  4. import { IRect } from './Rect';
  5. export declare class Box<BoxType = any> implements IBoundingBox, IRect {
  6. static isRect(rect: any): boolean;
  7. static assertIsValidBox(box: any, callee: string, allowNegativeDimensions?: boolean): void;
  8. private _x;
  9. private _y;
  10. private _width;
  11. private _height;
  12. constructor(_box: IBoundingBox | IRect, allowNegativeDimensions?: boolean);
  13. get x(): number;
  14. get y(): number;
  15. get width(): number;
  16. get height(): number;
  17. get left(): number;
  18. get top(): number;
  19. get right(): number;
  20. get bottom(): number;
  21. get area(): number;
  22. get topLeft(): Point;
  23. get topRight(): Point;
  24. get bottomLeft(): Point;
  25. get bottomRight(): Point;
  26. round(): Box<BoxType>;
  27. floor(): Box<BoxType>;
  28. toSquare(): Box<BoxType>;
  29. rescale(s: IDimensions | number): Box<BoxType>;
  30. pad(padX: number, padY: number): Box<BoxType>;
  31. clipAtImageBorders(imgWidth: number, imgHeight: number): Box<BoxType>;
  32. shift(sx: number, sy: number): Box<BoxType>;
  33. padAtBorders(imageHeight: number, imageWidth: number): {
  34. dy: number;
  35. edy: number;
  36. dx: number;
  37. edx: number;
  38. y: number;
  39. ey: number;
  40. x: number;
  41. ex: number;
  42. w: number;
  43. h: number;
  44. };
  45. calibrate(region: Box): Box<any>;
  46. }