/// import { Observable, ObservedValueOf } from 'rxjs'; import { Auth, Apps } from '@aimee-blue/ab-contracts'; import { IJwt, decodeJwt } from '@aimee-blue/ab-auth'; import { ISocketEpicAttributes, ISocketEpicContext } from '../kit'; import { IAction } from '../action'; export interface IInjectedAuthDetails { id: string; auth?: IJwt; } export interface ISocketEpicWithAuth extends ISocketEpicAttributes { (commands: Observable, ctx: ISocketEpicContext & IInjectedAuthDetails & D, ...rest: R): Observable; } export declare function epicWithAuth(allow: Auth.Role[], epic: E, deps?: { verifyToken: (param: Auth.IVerifyParams) => Observable; decodeJwt: typeof decodeJwt; }): (...[cmd, ctx, ...rest]: Parameters) => Observable>>;