InputJax.d.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { MathDocument } from './MathDocument.js';
  2. import { MathItem, ProtoItem } from './MathItem.js';
  3. import { MmlNode } from './MmlTree/MmlNode.js';
  4. import { MmlFactory } from './MmlTree/MmlFactory.js';
  5. import { OptionList } from '../util/Options.js';
  6. import { FunctionList } from '../util/FunctionList.js';
  7. import { DOMAdaptor } from '../core/DOMAdaptor.js';
  8. export interface InputJax<N, T, D> {
  9. name: string;
  10. processStrings: boolean;
  11. options: OptionList;
  12. preFilters: FunctionList;
  13. postFilters: FunctionList;
  14. adaptor: DOMAdaptor<N, T, D>;
  15. mmlFactory: MmlFactory;
  16. setAdaptor(adaptor: DOMAdaptor<N, T, D>): void;
  17. setMmlFactory(mmlFactory: MmlFactory): void;
  18. initialize(): void;
  19. reset(...args: any[]): void;
  20. findMath(which: N | string[], options?: OptionList): ProtoItem<N, T>[];
  21. compile(math: MathItem<N, T, D>, document: MathDocument<N, T, D>): MmlNode;
  22. }
  23. export declare abstract class AbstractInputJax<N, T, D> implements InputJax<N, T, D> {
  24. static NAME: string;
  25. static OPTIONS: OptionList;
  26. options: OptionList;
  27. preFilters: FunctionList;
  28. postFilters: FunctionList;
  29. adaptor: DOMAdaptor<N, T, D>;
  30. mmlFactory: MmlFactory;
  31. constructor(options?: OptionList);
  32. get name(): string;
  33. setAdaptor(adaptor: DOMAdaptor<N, T, D>): void;
  34. setMmlFactory(mmlFactory: MmlFactory): void;
  35. initialize(): void;
  36. reset(..._args: any[]): void;
  37. get processStrings(): boolean;
  38. findMath(_node: N | string[], _options?: OptionList): ProtoItem<N, T>[];
  39. abstract compile(math: MathItem<N, T, D>, document: MathDocument<N, T, D>): MmlNode;
  40. protected executeFilters(filters: FunctionList, math: MathItem<N, T, D>, document: MathDocument<N, T, D>, data: any): any;
  41. }