# https://jsr.io/@scope/a/meta.json
{"versions": { "1.0.0": {} } }

# https://jsr.io/@scope/a/1.0.0_meta.json
{ "exports": { ".": "./mod.ts" } }

# https://jsr.io/@scope/a/1.0.0/base.ts
export class Base {
}

# https://jsr.io/@scope/a/1.0.0/interface.ts
export class IInterface {
}

# https://jsr.io/@scope/a/1.0.0/mod.ts
import { Base } from './base.ts'
import type { IInterface } from './interface.ts';

class ServerAdapter extends Base implements IInterface {
  static adapt() {
  }
}

export const adapt = ServerAdapter.adapt;

# mod.ts
import 'jsr:@scope/a'

# output
{
  "roots": [
    "file:///mod.ts"
  ],
  "modules": [
    {
      "kind": "esm",
      "dependencies": [
        {
          "specifier": "jsr:@scope/a",
          "code": {
            "specifier": "jsr:@scope/a",
            "resolutionMode": "import",
            "span": {
              "start": {
                "line": 0,
                "character": 7
              },
              "end": {
                "line": 0,
                "character": 21
              }
            }
          }
        }
      ],
      "size": 22,
      "mediaType": "TypeScript",
      "specifier": "file:///mod.ts"
    },
    {
      "kind": "esm",
      "size": 22,
      "mediaType": "TypeScript",
      "specifier": "https://jsr.io/@scope/a/1.0.0/base.ts"
    },
    {
      "kind": "esm",
      "size": 28,
      "mediaType": "TypeScript",
      "specifier": "https://jsr.io/@scope/a/1.0.0/interface.ts"
    },
    {
      "kind": "esm",
      "dependencies": [
        {
          "specifier": "./base.ts",
          "code": {
            "specifier": "https://jsr.io/@scope/a/1.0.0/base.ts",
            "resolutionMode": "import",
            "span": {
              "start": {
                "line": 0,
                "character": 21
              },
              "end": {
                "line": 0,
                "character": 32
              }
            }
          }
        },
        {
          "specifier": "./interface.ts",
          "type": {
            "specifier": "https://jsr.io/@scope/a/1.0.0/interface.ts",
            "resolutionMode": "import",
            "span": {
              "start": {
                "line": 1,
                "character": 32
              },
              "end": {
                "line": 1,
                "character": 48
              }
            }
          }
        }
      ],
      "size": 209,
      "mediaType": "TypeScript",
      "specifier": "https://jsr.io/@scope/a/1.0.0/mod.ts"
    }
  ],
  "redirects": {
    "jsr:@scope/a": "https://jsr.io/@scope/a/1.0.0/mod.ts"
  },
  "packages": {
    "@scope/a@*": "@scope/a@1.0.0"
  }
}

Fast check https://jsr.io/@scope/a/1.0.0/base.ts:
  {}
  export class Base {
  }
  --- DTS ---
  export declare class Base {
  }

Fast check https://jsr.io/@scope/a/1.0.0/interface.ts:
  {}
  export class IInterface {
  }
  --- DTS ---
  export declare class IInterface {
  }

Fast check https://jsr.io/@scope/a/1.0.0/mod.ts:
  {
    "./base.ts": {
      "code": {
        "specifier": "https://jsr.io/@scope/a/1.0.0/base.ts",
        "resolutionMode": "import",
        "span": {
          "start": {
            "line": 0,
            "character": 21
          },
          "end": {
            "line": 0,
            "character": 32
          }
        }
      }
    },
    "./interface.ts": {
      "type": {
        "specifier": "https://jsr.io/@scope/a/1.0.0/interface.ts",
        "resolutionMode": "import",
        "span": {
          "start": {
            "line": 1,
            "character": 32
          },
          "end": {
            "line": 1,
            "character": 48
          }
        }
      }
    }
  }
  import { Base } from "./base.ts";
  import type { IInterface } from "./interface.ts";
  class ServerAdapter extends Base implements IInterface {
    static adapt(): void {}
  }
  export const adapt = ServerAdapter.adapt;
  --- DTS ---
  import { Base } from "./base.ts";
  import type { IInterface } from "./interface.ts";
  declare class ServerAdapter extends Base implements IInterface {
    static adapt(): void;
  }
  export declare const adapt: any;
  --- DTS Diagnostics ---
  unable to infer type, falling back to any type
      at https://jsr.io/@scope/a/1.0.0/mod.ts@180
