Add type qualifier to type-only imports
diff --git a/packages/dom/src/range/match.ts b/packages/dom/src/range/match.ts
index cf6d92a..df87db7 100644
--- a/packages/dom/src/range/match.ts
+++ b/packages/dom/src/range/match.ts
@@ -21,7 +21,7 @@
 import type { RangeSelector, Selector } from '@annotator/selector';
 
 import { ownerDocument } from '../scope';
-import { DomMatcher, DomScope } from '../types';
+import type { DomMatcher, DomScope } from '../types';
 
 import { product } from './cartesian';
 
diff --git a/packages/dom/src/scope.ts b/packages/dom/src/scope.ts
index 816bb03..e107212 100644
--- a/packages/dom/src/scope.ts
+++ b/packages/dom/src/scope.ts
@@ -18,7 +18,7 @@
  * under the License.
  */
 
-import { DomScope } from './types';
+import type { DomScope } from './types';
 
 export function ownerDocument(scope: DomScope): Document {
   const node = isRange(scope) ? scope.commonAncestorContainer : scope;
diff --git a/packages/dom/src/text-quote/describe.ts b/packages/dom/src/text-quote/describe.ts
index 9e690f9..b048914 100644
--- a/packages/dom/src/text-quote/describe.ts
+++ b/packages/dom/src/text-quote/describe.ts
@@ -21,7 +21,7 @@
 import seek from 'dom-seek';
 import type { TextQuoteSelector } from '@annotator/selector';
 
-import { DomScope } from '../types';
+import type { DomScope } from '../types';
 import { ownerDocument, rangeFromScope } from '../scope';
 
 export async function describeTextQuote(
diff --git a/packages/dom/src/text-quote/match.ts b/packages/dom/src/text-quote/match.ts
index e1035b9..a78d057 100644
--- a/packages/dom/src/text-quote/match.ts
+++ b/packages/dom/src/text-quote/match.ts
@@ -21,7 +21,7 @@
 import type { TextQuoteSelector } from '@annotator/selector';
 import seek from 'dom-seek';
 
-import { DomScope, DomMatcher } from '../types';
+import type { DomScope, DomMatcher } from '../types';
 import { ownerDocument, rangeFromScope } from '../scope';
 
 export function createTextQuoteSelectorMatcher(
diff --git a/packages/dom/test/text-quote/match.test.ts b/packages/dom/test/text-quote/match.test.ts
index f892132..78b1239 100644
--- a/packages/dom/test/text-quote/match.test.ts
+++ b/packages/dom/test/text-quote/match.test.ts
@@ -22,7 +22,7 @@
 import type { TextQuoteSelector } from '@annotator/selector';
 
 import { createTextQuoteSelectorMatcher } from '../../src/text-quote/match';
-import { DomScope } from '../../src/types';
+import type { DomScope } from '../../src/types';
 import { evaluateXPath, RangeInfo } from '../utils';
 
 import { testCases } from './match-cases';
diff --git a/packages/selector/src/index.ts b/packages/selector/src/index.ts
index b0bf9af..35d004e 100644
--- a/packages/selector/src/index.ts
+++ b/packages/selector/src/index.ts
@@ -18,9 +18,9 @@
  * under the License.
  */
 
-import { Selector, Matcher } from './types';
+import type { Selector, Matcher } from './types';
 
-export * from './types';
+export type { Selector, Matcher };
 
 export function makeRefinable<
   // Any subtype of Selector can be made refinable; but note we limit the value