Instance<C, B, I>: ClusterBehavior & Omit<InstanceType<B>,
    | "cluster"
    | "state"
    | "events"
    | "initialize"
    | typeof Symbol.asyncDispose
    | keyof ClusterInterface.MethodsOf<ClusterInterface.InterfaceOf<B>, ClusterOf<B>>
    | keyof ExtensionInterfaceOf<B>> & ClusterInterface.MethodsOf<I, C> & ExtensionInterfaceOf<B> & {
    cluster: C;
    events: ClusterEvents<C, B>;
    features: TypeFromBitSchema<C["features"]>;
    state: ClusterState<C, B>;
    [asyncDispose](): MaybePromise<void>;
}

A fully-typed ClusterBehavior. This type is derived by combining properties of the base type with properties contributed by the cluster.

Type Parameters

Type declaration

  • cluster: C

    The implemented cluster.

  • events: ClusterEvents<C, B>

    Observables for cluster events and attribute changes.

  • features: TypeFromBitSchema<C["features"]>

    Supported features as a flag object.

  • state: ClusterState<C, B>

    State values for the behavior.

  • [asyncDispose]:function
    • Returns MaybePromise<void>