diff --git a/plugins/kotlinx-serialization/testData/diagnostics/typeAliasedSerializable.fir.kt b/plugins/kotlinx-serialization/testData/diagnostics/typeAliasedSerializable.fir.kt
new file mode 100644
index 0000000..8e2f97a
--- /dev/null
+++ b/plugins/kotlinx-serialization/testData/diagnostics/typeAliasedSerializable.fir.kt
@@ -0,0 +1,32 @@
+// FIR_IDENTICAL
+// WITH_STDLIB
+
+import kotlinx.serialization.*
+
+// Typealias for Serializable annotation
+<!TYPEALIASED_SERIALIZABLE_ANNOTATION!>typealias MySerializable = Serializable<!>
+
+// Normal usage of Serializable (no warning)
+@Serializable
+class NormalClass(val value: String)
+
+// Usage of typealiased Serializable (should trigger warning)
+@MySerializable
+class TypeAliasedClass(val value: String)
+
+// Usage of typealiased Serializable with custom serializer (should trigger warning)
+@MySerializable(CustomSerializer::class)
+class TypeAliasedClassWithCustomSerializer(val value: String)
+
+// Custom serializer
+object CustomSerializer : KSerializer<TypeAliasedClassWithCustomSerializer> {
+    override val descriptor = serialDescriptor<String>()
+    
+    override fun serialize(encoder: Encoder, value: TypeAliasedClassWithCustomSerializer) {
+        encoder.encodeString(value.value)
+    }
+    
+    override fun deserialize(decoder: Decoder): TypeAliasedClassWithCustomSerializer {
+        return TypeAliasedClassWithCustomSerializer(decoder.decodeString())
+    }
+}
\ No newline at end of file
diff --git a/plugins/kotlinx-serialization/testData/diagnostics/typeAliasedSerializable.kt b/plugins/kotlinx-serialization/testData/diagnostics/typeAliasedSerializable.kt
new file mode 100644
index 0000000..180a681
--- /dev/null
+++ b/plugins/kotlinx-serialization/testData/diagnostics/typeAliasedSerializable.kt
@@ -0,0 +1,32 @@
+// FIR_IDENTICAL
+// WITH_STDLIB
+
+import kotlinx.serialization.*
+
+// Typealias for Serializable annotation
+typealias MySerializable = Serializable
+
+// Normal usage of Serializable (no warning)
+@Serializable
+class NormalClass(val value: String)
+
+// Usage of typealiased Serializable (should trigger warning)
+@MySerializable
+class TypeAliasedClass(val value: String)
+
+// Usage of typealiased Serializable with custom serializer (should trigger warning)
+@MySerializable(CustomSerializer::class)
+class TypeAliasedClassWithCustomSerializer(val value: String)
+
+// Custom serializer
+object CustomSerializer : KSerializer<TypeAliasedClassWithCustomSerializer> {
+    override val descriptor = serialDescriptor<String>()
+    
+    override fun serialize(encoder: Encoder, value: TypeAliasedClassWithCustomSerializer) {
+        encoder.encodeString(value.value)
+    }
+    
+    override fun deserialize(decoder: Decoder): TypeAliasedClassWithCustomSerializer {
+        return TypeAliasedClassWithCustomSerializer(decoder.decodeString())
+    }
+}
\ No newline at end of file
