import { Subject } from "rxjs"; import { IrisChannel, IrisMessage, IrisSimChannel } from ".."; export declare type IrisUserType = { jwt: string; }; export interface IrisState { user: IrisUserType | null; channel: IrisChannel | null; simChannel: IrisSimChannel | null; subject: Subject | null; authenticationError?: Error; } export declare const initialState: IrisState; export declare type LoginStateTransformer = (state: IrisState) => IrisState; export declare const irisReducer: (state: IrisState | undefined, action: { type: "IRIS_AUTHENTICATION_CREATED_CHANNEL"; payload: { channel: IrisChannel; }; } | { type: "IRIS_AUTHENTICATION_LINKED_PHONE_CHANNEL"; payload: { simChannel: IrisSimChannel; }; } | { type: "IRIS_AUTHENTICATION_CONNECTED_CHANNEL"; payload: { $subject: Subject; }; } | { type: "IRIS_AUTH_RESPONSE_RECEIVED"; payload: { jwt: string; }; } | { type: "IRIS_LOGOUT"; payload: { channel: IrisChannel | null; }; }) => (Record<"channel", IrisChannel> & IrisState) | (Record<"simChannel", IrisSimChannel> & IrisState) | (Record<"subject", Subject> & IrisState) | (Record<"authenticationError", Error | undefined> & IrisState) | (Record<"authenticationError", Error | undefined> & Record<"subject", null> & IrisState); //# sourceMappingURL=iris.reducer.d.ts.map