Type alias HookSignatures

HookSignatures: {
    [P in hookName]: P extends `${infer C extends "DEEP_LINK"}_${infer T extends type}`
        ? [request: Message<C, T>, origin: string | null]
        : P extends infer C extends code
            ? [request: Message<C, never>, origin: string | null]
            : never
}

An object that maps given hook names to their respective function argument tuple.