@awestwell You'd do something like Auditable by AuditableImpl(), where Auditable is the interface, and AuditableImpl is any class you like (that implements Auditable). Then, Kotlin would implement Auditable on your UserEntity, but delegate all calls to the instance of AuditableImpl you defined, which can have any fields or state you like.