menclose.d.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { AnyWrapper, WrapperConstructor, Constructor, AnyWrapperClass } from '../Wrapper.js';
  2. import * as Notation from '../Notation.js';
  3. import { CommonMsqrt } from './msqrt.js';
  4. export interface CommonMenclose<W extends AnyWrapper, S extends CommonMsqrt, N> extends AnyWrapper {
  5. notations: Notation.List<W, N>;
  6. renderChild: Notation.Renderer<W, N>;
  7. msqrt: S;
  8. padding: number;
  9. thickness: number;
  10. arrowhead: {
  11. x: number;
  12. y: number;
  13. dx: number;
  14. };
  15. TRBL: Notation.PaddingData;
  16. getParameters(): void;
  17. getNotations(): void;
  18. removeRedundantNotations(): void;
  19. initializeNotations(): void;
  20. getBBoxExtenders(): Notation.PaddingData;
  21. getPadding(): Notation.PaddingData;
  22. maximizeEntries(X: Notation.PaddingData, Y: Notation.PaddingData): void;
  23. getOffset(direction: string): number;
  24. getArgMod(w: number, h: number): [number, number];
  25. arrow(w: number, a: number, double: boolean, offset?: string, trans?: number): N;
  26. arrowData(): {
  27. a: number;
  28. W: number;
  29. x: number;
  30. y: number;
  31. };
  32. arrowAW(): [number, number];
  33. createMsqrt(child: W): S;
  34. sqrtTRBL(): number[];
  35. }
  36. export interface CommonMencloseClass<W extends AnyWrapper, N> extends AnyWrapperClass {
  37. notations: Notation.DefList<W, N>;
  38. }
  39. export declare type MencloseConstructor<W extends AnyWrapper, S extends CommonMsqrt, N> = Constructor<CommonMenclose<W, S, N>>;
  40. export declare function CommonMencloseMixin<W extends AnyWrapper, S extends CommonMsqrt, N, T extends WrapperConstructor>(Base: T): MencloseConstructor<W, S, N> & T;