@cfxlabsinc/b2b-services
    Preparing search index...

    Type Alias CustomerEventBase<N>

    Publisher-side envelope: scopes is enforced here, at compile time.

    Spelled out rather than derived with Omit<Envelope, …>Envelope is an intersection with a union arm, and Omit over that collapses the union into one flattened shape, silently losing the "exactly one reference pair" property.

    type CustomerEventBase<N extends CustomerEventName> = {
        createdAt?: Date;
        customerId: string;
        data: Static<typeof customerEvents[N]["data"]>;
        event: N;
    }

    Type Parameters

    Index
    createdAt?: Date
    customerId: string
    data: Static<typeof customerEvents[N]["data"]>
    event: N