Skip to content

Multiple Typescript Errors #843

@mark-todd

Description

@mark-todd

Hi there,

My project uses typescript, so checks all files for errors - when it reaches this package it returns a few errors. Here is my stack trace for npx tsc --noEmit:

node_modules/mathjax-full/js/core/MmlTree/MmlFactory.d.ts:3:70 - error TS2344: Type 'MmlNodeClass' does not satisfy the constraint 'FactoryNodeClass<MmlNode>'.
  Types of parameters 'factory' and 'factory' are incompatible.
    Type 'Factory<MmlNode, FactoryNodeClass<MmlNode>>' is missing the following properties from type 'MmlFactory': MML, defaultKind, nodeMap, node

3 export declare class MmlFactory extends AbstractNodeFactory<MmlNode, MmlNodeClass> {
                                                                       ~~~~~~~~~~~~

node_modules/mathjax-full/js/core/Tree/WrapperFactory.d.ts:4:123 - error TS2344: Type 'C' does not satisfy the constraint 'FactoryNodeClass<W>'.
  Type 'WrapperClass<N, W>' is not assignable to type 'FactoryNodeClass<W>'.
    Types of parameters 'factory' and 'factory' are incompatible.
      Property 'wrap' is missing in type 'Factory<W, FactoryNodeClass<W>>' but required in type 'WrapperFactory<N, W, WrapperClass<N, W>>'.

4 export interface WrapperFactory<N extends Node, W extends Wrapper<N, W>, C extends WrapperClass<N, W>> extends Factory<W, C> {
                                                                                                                            ~

  node_modules/mathjax-full/js/core/Tree/WrapperFactory.d.ts:5:5
    5     wrap(node: N, ...args: any[]): W;
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    'wrap' is declared here.

node_modules/mathjax-full/js/core/Tree/WrapperFactory.d.ts:7:152 - error TS2344: Type 'C' does not satisfy the constraint 'FactoryNodeClass<W>'.
  Type 'WrapperClass<N, W>' is not assignable to type 'FactoryNodeClass<W>'.
    Types of parameters 'factory' and 'factory' are incompatible.
      Property 'wrap' is missing in type 'Factory<W, FactoryNodeClass<W>>' but required in type 'WrapperFactory<N, W, WrapperClass<N, W>>'.

7 export declare abstract class AbstractWrapperFactory<N extends Node, W extends Wrapper<N, W>, C extends WrapperClass<N, W>> extends AbstractFactory<W, C> implements WrapperFactory<N, W, C> {
                                                                                                                                                         ~

  node_modules/mathjax-full/js/core/Tree/WrapperFactory.d.ts:5:5
    5     wrap(node: N, ...args: any[]): W;
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    'wrap' is declared here.

node_modules/mathjax-full/js/output/common/WrapperFactory.d.ts:6:364 - error TS2344: Type 'C' does not satisfy the constraint 'WrapperClass<MmlNode, W>'.
  Type 'CommonWrapperClass<J, W, C, CC, DD, FD>' is not assignable to type 'WrapperClass<MmlNode, W>'.
    Types of parameters 'factory' and 'factory' are incompatible.
      Type 'WrapperFactory<MmlNode, W, WrapperClass<MmlNode, W>>' is missing the following properties from type 'CommonWrapperFactory<J, W, C, CC, DD, FD>': jax, Wrappers, defaultKind, nodeMap, node

6 export declare class CommonWrapperFactory<J extends CommonOutputJax<any, any, any, W, CommonWrapperFactory<J, W, C, CC, DD, FD>, FD, any>, W extends CommonWrapper<J, W, C, CC, DD, FD>, C extends CommonWrapperClass<J, W, C, CC, DD, FD>, CC extends CharOptions, DD extends DelimiterData, FD extends FontData<CC, any, DD>> extends AbstractWrapperFactory<MmlNode, W, C> {
                                                                                                                                                                                                                                                                                                                                                                             ~


Found 4 errors in 3 files.

Errors  Files
     1  node_modules/mathjax-full/js/core/MmlTree/MmlFactory.d.ts:3
     2  node_modules/mathjax-full/js/core/Tree/WrapperFactory.d.ts:4
     1  node_modules/mathjax-full/js/output/common/WrapperFactory.d.ts:6

Cheers,
Mark

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions