Trilium Frontend API
    Preparing search index...

    Type Alias Mixed<Base, Mixin>

    Mixed: {
        prototype: Mixin & InstanceType<Base>;
        new (...args: ConstructorParameters<Base>): Mixin & InstanceType<Base>;
    } & { [K in keyof Base]: Base[K] }

    Helper type that creates constructor types from a base class and a mixin interface.

    interface MyMixinInterface {
    mixinMethod(): void;
    }

    function MyMixin<Base extends Constructor>( base: Base ): Mixed<Base, MyMixinInterface> {
    // ...
    }

    class BaseClass {
    baseMethod(): void {
    // ...
    }
    }

    const MixedClass = MyMixin( BaseClass );

    // Contains both `mixinMethod()` and `baseMethod()`.
    const myObject = new MixedClass();
    myObject.mixinMethod();
    myObject.baseMethod();

    Type Parameters

    • Base extends Constructor

      A type of constructor of a class to apply mixin to.

    • Mixin extends object

      An interface representing mixin.