// eslint-disable-next-line @definitelytyped/no-self-import import EmberObject from "@ember/object"; // eslint-disable-next-line @definitelytyped/no-self-import import { Fix, MixinOrLiteral } from "@ember/object/-private/types"; /** * The `Ember.Mixin` class allows you to create mixins, whose properties can be * added to other classes. */ export default class Mixin { /** * Mixin needs to have *something* on its prototype, otherwise it's treated like an empty interface. * It cannot be private, sadly. */ __ember_mixin__: never; static create( args?: MixinOrLiteral & ThisType>, ): Mixin; static create( arg1: MixinOrLiteral & ThisType>, arg2: MixinOrLiteral & ThisType>, ): Mixin; static create( arg1: MixinOrLiteral & ThisType>, arg2: MixinOrLiteral & ThisType>, arg3: MixinOrLiteral & ThisType>, ): Mixin; static create( arg1: MixinOrLiteral & ThisType>, arg2: MixinOrLiteral & ThisType>, arg3: MixinOrLiteral & ThisType>, arg4: MixinOrLiteral & ThisType>, ): Mixin; }