diff --git a/lib/src/model/documentation_comment.dart b/lib/src/model/documentation_comment.dart
index 9af922d23c..e023d0eff7 100644
--- a/lib/src/model/documentation_comment.dart
+++ b/lib/src/model/documentation_comment.dart
@@ -35,7 +35,7 @@ final _htmlInjectRegExp = RegExp(r'([a-f0-9]+)');
/// [_processCommentWithoutTools] and [processComment] are the primary
/// entrypoints.
mixin DocumentationComment
- on Canonicalization, Documentable, Warnable, Locatable, SourceCode {
+ implements Canonicalization, Documentable, Warnable, Locatable, SourceCode {
@override
Element get element;
diff --git a/lib/src/model/extendable.dart b/lib/src/model/extendable.dart
deleted file mode 100644
index 3a6c6cbd6e..0000000000
--- a/lib/src/model/extendable.dart
+++ /dev/null
@@ -1,17 +0,0 @@
-// Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE file.
-
-import 'package:dartdoc/src/model/model.dart';
-
-/// Mixin for subclasses of [ModelElement] representing Elements that can be
-/// extension methods.
-mixin Extendable on ContainerMember {
- /// Returns this Extendable from the [Extension] in which it was declared.
- Extendable get definingExtension =>
- throw UnimplementedError('definingExtension');
-
- @override
- Container get canonicalEnclosingContainer =>
- throw UnimplementedError('canonicalEnclosingContainer');
-}
diff --git a/lib/src/model/has_no_page.dart b/lib/src/model/has_no_page.dart
index 5d4b9fe4f8..0ba16ee89c 100644
--- a/lib/src/model/has_no_page.dart
+++ b/lib/src/model/has_no_page.dart
@@ -5,7 +5,7 @@
import 'package:dartdoc/src/model/model.dart';
/// An element which has no page documenting itself.
-mixin HasNoPage on ModelElement {
+mixin HasNoPage implements ModelElement {
@override
String get filePath =>
throw UnimplementedError('This element has no generated page');
diff --git a/lib/src/model/inheriting_container.dart b/lib/src/model/inheriting_container.dart
index 2b14d4c8ae..65c21dd707 100644
--- a/lib/src/model/inheriting_container.dart
+++ b/lib/src/model/inheriting_container.dart
@@ -18,7 +18,7 @@ import 'package:meta/meta.dart';
///
/// Note that [Constructor]s are not considered to be modifiers so a
/// [hasModifiers] override is not necessary for this mixin.
-mixin Constructable on InheritingContainer {
+mixin Constructable implements InheritingContainer {
late final List constructors = element.constructors
.map((e) => getModelFor(e, library) as Constructor)
.toList(growable: false);
diff --git a/lib/src/model/model.dart b/lib/src/model/model.dart
index f3e9e80522..094b7042fb 100644
--- a/lib/src/model/model.dart
+++ b/lib/src/model/model.dart
@@ -17,7 +17,6 @@ export 'documentation_comment.dart';
export 'dynamic.dart';
export 'enclosed_element.dart';
export 'enum.dart';
-export 'extendable.dart';
export 'extension.dart';
export 'extension_type.dart';
export 'field.dart';