Skip to content

Typescript compile fails with errors in cid.d.ts #327

Description

@commonpike

This package got included in my project via atproto.

When trying to compile typescript (npx tsc) using

    "target": "esnext",
    "module": "esnext",
    "moduleResolution": "node",
    "skipLibCheck": false

It fails with two errors

node_modules/multiformats/types/src/cid.d.ts:160:85 - error TS2344: Type 'Prefix' does not satisfy the constraint 'string'.

160 export type MultibaseEncoder<Prefix> = import('./bases/interface').MultibaseEncoder<Prefix>;
                                                                                        ~~~~~~

  node_modules/multiformats/types/src/cid.d.ts:160:30
    160 export type MultibaseEncoder<Prefix> = import('./bases/interface').MultibaseEncoder<Prefix>;
                                     ~~~~~~
    This type parameter might need an `extends string` constraint.

node_modules/multiformats/types/src/cid.d.ts:161:85 - error TS2344: Type 'Prefix' does not satisfy the constraint 'string'.

161 export type MultibaseDecoder<Prefix> = import('./bases/interface').MultibaseDecoder<Prefix>;
                                                                                        ~~~~~~

  node_modules/multiformats/types/src/cid.d.ts:161:30
    161 export type MultibaseDecoder<Prefix> = import('./bases/interface').MultibaseDecoder<Prefix>;
                                     ~~~~~~
    This type parameter might need an `extends string` constraint.

replacing

export type MultibaseEncoder<Prefix > = import('./bases/interface').MultibaseEncoder<Prefix>;
export type MultibaseDecoder<Prefix> = import('./bases/interface').MultibaseDecoder<Prefix>;

with

export type MultibaseEncoder<Prefix extends string> = import('./bases/interface').MultibaseEncoder<Prefix>;
export type MultibaseDecoder<Prefix extends string> = import('./bases/interface').MultibaseDecoder<Prefix>;

removes the error. but I have no idea what it means ... or where this is generated :-)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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