Use type-only exports where applicable
diff --git a/packages/dom/src/css.ts b/packages/dom/src/css.ts
index b6b212d..28ffb94 100644
--- a/packages/dom/src/css.ts
+++ b/packages/dom/src/css.ts
@@ -18,7 +18,7 @@
  * under the License.
  */
 
-import { CssSelector, Matcher } from '@annotator/selector';
+import type { CssSelector, Matcher } from '@annotator/selector';
 
 export function createCssSelectorMatcher(
   selector: CssSelector,
diff --git a/packages/dom/src/range/match.ts b/packages/dom/src/range/match.ts
index 9cfe529..cf6d92a 100644
--- a/packages/dom/src/range/match.ts
+++ b/packages/dom/src/range/match.ts
@@ -18,7 +18,7 @@
  * under the License.
  */
 
-import { RangeSelector, Selector } from '@annotator/selector';
+import type { RangeSelector, Selector } from '@annotator/selector';
 
 import { ownerDocument } from '../scope';
 import { DomMatcher, DomScope } from '../types';
diff --git a/packages/dom/src/text-quote/describe.ts b/packages/dom/src/text-quote/describe.ts
index 4fd2712..9e690f9 100644
--- a/packages/dom/src/text-quote/describe.ts
+++ b/packages/dom/src/text-quote/describe.ts
@@ -19,7 +19,7 @@
  */
 
 import seek from 'dom-seek';
-import { TextQuoteSelector } from '@annotator/selector';
+import type { TextQuoteSelector } from '@annotator/selector';
 
 import { DomScope } from '../types';
 import { ownerDocument, rangeFromScope } from '../scope';
diff --git a/packages/dom/src/text-quote/match.ts b/packages/dom/src/text-quote/match.ts
index ed4d46d..e1035b9 100644
--- a/packages/dom/src/text-quote/match.ts
+++ b/packages/dom/src/text-quote/match.ts
@@ -18,7 +18,7 @@
  * under the License.
  */
 
-import { TextQuoteSelector } from '@annotator/selector';
+import type { TextQuoteSelector } from '@annotator/selector';
 import seek from 'dom-seek';
 
 import { DomScope, DomMatcher } from '../types';
diff --git a/packages/dom/src/types.ts b/packages/dom/src/types.ts
index ae16c07..9bfc80a 100644
--- a/packages/dom/src/types.ts
+++ b/packages/dom/src/types.ts
@@ -18,7 +18,7 @@
  * under the License.
  */
 
-import { Matcher } from '@annotator/selector';
+import type { Matcher } from '@annotator/selector';
 
 export type DomScope = Node | Range;
 
diff --git a/packages/dom/test/text-quote/describe-cases.ts b/packages/dom/test/text-quote/describe-cases.ts
index cf58331..77d3f25 100644
--- a/packages/dom/test/text-quote/describe-cases.ts
+++ b/packages/dom/test/text-quote/describe-cases.ts
@@ -18,7 +18,7 @@
  * under the License.
  */
 
-import { TextQuoteSelector } from '@annotator/selector';
+import type { TextQuoteSelector } from '@annotator/selector';
 
 import { RangeInfo } from '../utils';
 
diff --git a/packages/dom/test/text-quote/match-cases.ts b/packages/dom/test/text-quote/match-cases.ts
index 7aea688..2b1b60b 100644
--- a/packages/dom/test/text-quote/match-cases.ts
+++ b/packages/dom/test/text-quote/match-cases.ts
@@ -18,7 +18,7 @@
  * under the License.
  */
 
-import { TextQuoteSelector } from '@annotator/selector';
+import type { TextQuoteSelector } from '@annotator/selector';
 
 import { RangeInfo } from '../utils';
 
diff --git a/packages/dom/test/text-quote/match.test.ts b/packages/dom/test/text-quote/match.test.ts
index 5930209..235c046 100644
--- a/packages/dom/test/text-quote/match.test.ts
+++ b/packages/dom/test/text-quote/match.test.ts
@@ -19,7 +19,7 @@
  */
 
 import { assert } from 'chai';
-import { TextQuoteSelector } from '@annotator/selector';
+import type { TextQuoteSelector } from '@annotator/selector';
 
 import { createTextQuoteSelectorMatcher } from '../../src/text-quote/match';
 import { DomScope } from '../../src/types';