Interface SentinelModule<TParams, TEventData>

interface SentinelModule<
    TParams extends SentinelParams = SentinelParams,
    TEventData extends SentinelModuleEventData = SentinelModuleEventData,
> {
    address: Lowercase<string>;
    config: TParams["config"];
    eventData: TEventData;
    id: string;
    modName?: string;
    params: TParams;
    previousHash: () => Promisable<undefined | string>;
    queries: string[];
    query: <
        T extends UnsignedQueryBoundWitness = UnsignedQueryBoundWitness,
        TConf extends ModuleConfig<void, void> = ModuleConfig<void, void>,
    >(
        query: T,
        payloads?: Payload[],
        queryConfig?: TConf,
    ) => Promisable<ModuleQueryResult<Payload, ModuleError, BoundWitness>>;
    queryable: <
        T extends UnsignedQueryBoundWitness = UnsignedQueryBoundWitness,
        TConf extends ModuleConfig<void, void> = ModuleConfig<void, void>,
    >(
        query: T,
        payloads?: Payload[],
        queryConfig?: TConf,
    ) => Promisable<boolean>;
    start?: () => Promisable<boolean>;
    stop?: () => Promisable<boolean>;
    clearListeners(eventNames: keyof TEventData | (keyof TEventData)[]): void;
    emit<TEventName extends string | number | symbol>(
        eventName: TEventName,
        eventArgs: TEventData[TEventName],
    ): Promise<void>;
    emitSerial<TEventName extends string | number | symbol>(
        eventName: TEventName,
        eventArgs: TEventData[TEventName],
    ): Promise<void>;
    listenerCount(eventNames: keyof TEventData | (keyof TEventData)[]): number;
    off<TEventName extends string | number | symbol>(
        eventNames: TEventName | TEventName[],
        listener: EventListener<TEventData[TEventName]>,
    ): void;
    offAny(listener: Promise<void> | EventAnyListener<EventArgs>): void;
    on<TEventName extends string | number | symbol>(
        eventNames: TEventName | TEventName[],
        listener: EventListener<TEventData[TEventName]>,
    ): EventUnsubscribeFunction;
    onAny(listener: EventAnyListener): EventUnsubscribeFunction;
    once<TEventName extends string | number | symbol>(
        eventName: TEventName,
        listener: EventListener<TEventData[TEventName]>,
    ): EventUnsubscribeFunction;
}

Type Parameters

Hierarchy (View Summary)

Properties

address: Lowercase<string>
config: TParams["config"]
eventData: TEventData
id: string
modName?: string
params: TParams
previousHash: () => Promisable<undefined | string>
queries: string[]
query: <
    T extends UnsignedQueryBoundWitness = UnsignedQueryBoundWitness,
    TConf extends ModuleConfig<void, void> = ModuleConfig<void, void>,
>(
    query: T,
    payloads?: Payload[],
    queryConfig?: TConf,
) => Promisable<ModuleQueryResult<Payload, ModuleError, BoundWitness>>
queryable: <
    T extends UnsignedQueryBoundWitness = UnsignedQueryBoundWitness,
    TConf extends ModuleConfig<void, void> = ModuleConfig<void, void>,
>(
    query: T,
    payloads?: Payload[],
    queryConfig?: TConf,
) => Promisable<boolean>
start?: () => Promisable<boolean>
stop?: () => Promisable<boolean>

Methods