import { ENDPOINT_LIFECYCLE_STATE, ENDPOINT_PROTOCOL } from "./internal/EndpointLifecycle.js"; export { ENDPOINT_LIFECYCLE_STATE, ENDPOINT_PROTOCOL } from "./internal/EndpointLifecycle.js"; export type $EndpointLifecycleState = $EndpointLifecycleInit | $EndpointLifecycleOpening | $EndpointLifecycleOpened | $EndpointLifecycleClosing | $EndpointLifecycleClosed; export type $EndpointLifecycleStateBase = ReturnType>; export declare const endpointLifecycleStateBase: (name: S) => { readonly name: S; }; export type $EndpointLifecycleInit = ReturnType; export type $EndpointLifecycleOpening = ReturnType; export type $EndpointLifecycleOpened = ReturnType; export type $EndpointLifecycleClosing = ReturnType; export type $EndpointLifecycleClosed = ReturnType; export declare const endpointLifecycleInit: () => { readonly name: ENDPOINT_LIFECYCLE_STATE.INIT; }; export declare const endpointLifecycleOpening: (subProtocols: Iterable, sessionIds: Iterable) => { readonly subProtocols: readonly ENDPOINT_PROTOCOL[]; readonly sessionIds: readonly string[]; readonly name: ENDPOINT_LIFECYCLE_STATE.OPENING; }; export declare const endpointLifecycleOpend: (subProtocols: Iterable, sessionPair: string) => { readonly subProtocols: readonly ENDPOINT_PROTOCOL[]; readonly sessionPair: string; readonly name: ENDPOINT_LIFECYCLE_STATE.OPENED; }; export declare const endpointLifecycleClosing: (reason?: string) => { readonly reason: string | undefined; readonly name: ENDPOINT_LIFECYCLE_STATE.CLOSING; }; export declare const endpointLifecycleClosed: (reason?: string) => { readonly reason: string | undefined; readonly name: ENDPOINT_LIFECYCLE_STATE.CLOSED; }; export type $EndpointLifecycle = ReturnType>; declare const endpointLifecycle: (state: T, order?: number) => OrderBy; export declare const EndpointLifecycle: ((state: T, order?: number) => OrderBy) & { equals: (a: OrderBy, b: OrderBy) => boolean; stateEquals: (a: $EndpointLifecycleState, b: $EndpointLifecycleState) => boolean; DEFAULT_ORDER: number; init: () => { readonly name: ENDPOINT_LIFECYCLE_STATE.INIT; }; opening: (subProtocols: Iterable, sessionIds: Iterable) => { readonly subProtocols: readonly ENDPOINT_PROTOCOL[]; readonly sessionIds: readonly string[]; readonly name: ENDPOINT_LIFECYCLE_STATE.OPENING; }; opend: (subProtocols: Iterable, sessionPair: string) => { readonly subProtocols: readonly ENDPOINT_PROTOCOL[]; readonly sessionPair: string; readonly name: ENDPOINT_LIFECYCLE_STATE.OPENED; }; closing: (reason?: string) => { readonly reason: string | undefined; readonly name: ENDPOINT_LIFECYCLE_STATE.CLOSING; }; closed: (reason?: string) => { readonly reason: string | undefined; readonly name: ENDPOINT_LIFECYCLE_STATE.CLOSED; }; }; //# sourceMappingURL=EndpointLifecycle.d.ts.map