import * as O from "fp-ts/Option"; import * as Rx from "rxjs"; import { ReceiveEvent, GatewayPayload, HelloEvent, InvalidSessionEvent, ReadyEvent, UpdatePresence } from "../types"; import { Connection } from "./connection"; import * as Dispatch from "./dispatch"; import { Options } from "./shard"; export declare const identify$: ({ conn, latestReady, latestSequence, token, intents, shard, presence, }: { token: string; conn: Connection; latestReady: Rx.Observable>; latestSequence: Rx.Observable>; presence?: UpdatePresence | undefined; } & Pick) => Rx.Observable>; export declare const heartbeats$: (conn: Connection, sequenceNumber: Rx.Observable>) => readonly [Rx.Observable>, Rx.Observable]; export declare const latestSequenceNumber: (dispatch$: Rx.Observable>) => Rx.Observable>; export declare const latestReady: (fromDispatch: Dispatch.Dispatch, invalidSession$: Rx.Observable>) => Rx.Observable>; export declare const heartbeatsFromHello: (hello$: Rx.Observable>) => Rx.Observable; export declare const heartbeatDiff: (heartbeats$: Rx.Observable, heartbeatAck$: Rx.Observable, hello$: Rx.Observable>) => Rx.Observable;