kernl API
    Preparing search index...

    Interface KernlServiceDeps

    What the services need from the rest of the shell.

    interface KernlServiceDeps {
        auth: Pick<AuthHooks, "getSigner"> & Partial<
            Pick<AuthHooks, "getUserPubkey">,
        >;
        bridges: BridgeRegistry;
        common?: CommonServiceOptions;
        consent: SigningConsent;
        eventStore: EventStore;
        host: Pick<KernlHost, "notify" | "openLink">;
        identity?: IdentityProviders;
        messaging: MessagingRegistry;
        pool: ApplesaucePool;
        profiles?: Pick<Profiles, "settled">;
        resolveIdentity: (
            windowId: string,
        ) => { aggregateHash: string; dTag: string } | null;
        theme?: Theme;
        tiers: RelayTiers;
        uploader?: Uploader;
    }
    Index
    auth: Pick<AuthHooks, "getSigner"> & Partial<Pick<AuthHooks, "getUserPubkey">>

    getUserPubkey lets the identity service name a read-only account, which has no signer.

    bridges: BridgeRegistry
    common?: CommonServiceOptions

    Social actions for applets (NAP-COMMON); without them the common domain is not offered.

    Gates the outbox service's publishes, which kehto signs without naming the window.

    eventStore: EventStore
    host: Pick<KernlHost, "notify" | "openLink">

    Identity lookups; defaults to the applesauce-backed providers.

    messaging: MessagingRegistry
    profiles?: Pick<Profiles, "settled">

    Names conversation participants for applets; without it they are listed by key alone.

    resolveIdentity: (
        windowId: string,
    ) => { aggregateHash: string; dTag: string } | null

    Maps a live window to its verified identity, or null.

    theme?: Theme
    tiers: RelayTiers
    uploader?: Uploader

    Uploads for applets (NAP-UPLOAD); without it the upload domain is not offered.