@synerty/vortexjs
Version:
Custom observable data serialisation and routing based on Angular 2+
77 lines (76 loc) • 3 kB
TypeScript
import { IPayloadFilt, Payload } from "./Payload";
import { Tuple } from "./exports";
import { Observable } from "rxjs";
import { PayloadEndpoint } from "./PayloadEndpoint";
import { IFilterUpdateCallable, TupleLoader } from "./TupleLoader";
import { VortexStatusService } from "./VortexStatusService";
import { PayloadEnvelope } from "./PayloadEnvelope";
import { NgLifeCycleEvents } from "../util/NgLifeCycleEvents";
import { HttpHeaders } from "@angular/common/http";
import * as i0 from "@angular/core";
export declare class VortexService {
private vortexStatusService;
private vortex;
private static _vortexUrl;
private static vortexClientName;
private static vortexHeaders;
private lastReconnectPromise;
constructor(vortexStatusService: VortexStatusService);
/**
* Set Vortex URL
*
* This method should not be used except in rare cases, such as an ios or android app.
*
* @param url The new URL for the vortex to use.
*/
static setVortexUrl(url: string | null): void;
/**
* Vortex URL
*
* The URL that the vortex is trying to connect to
*
* @return The new URL for the vortex to use.
*/
static getVortexUrl(): string | null;
/**
* Set Vortex HTTP Headers
*
* Set HTTP headers that will be sent when connecting to vortexes via HTTP.
* NOTE Websockets are over HTTP.
*
* Calling this method is required if the http service requires
* authentication, for example, with an oauth2 token, such as an azure
* proxy.
*
* @param headers The new headers to use.
*/
static setVortexHeaders(headers: HttpHeaders): void;
/**
* Set Vortex Name
*
* @param vortexClientName The vortexClientName to tell the server that we are.
*/
static setVortexClientName(vortexClientName: string): void;
disconnect(): Promise<void>;
reconnect(): Promise<void>;
private _reconnect;
sendTuple(filt: IPayloadFilt | string, tuples: any[] | Tuple[]): void;
sendFilt(filt: any): void;
/** Send Payload
*
* @param {Payload[] | Payload} payload
* @returns {Promise<void>}
*/
sendPayload(payload: Payload[] | Payload): Promise<void>;
/** Send Payload Envelope(s)
*
* @param {PayloadEnvelope[] | PayloadEnvelope} payloadEnvelope
* @returns {Promise<void>}
*/
sendPayloadEnvelope(payloadEnvelope: PayloadEnvelope[] | PayloadEnvelope): Promise<void>;
createEndpointObservable(component: NgLifeCycleEvents, filter: IPayloadFilt, processLatestOnly?: boolean): Observable<PayloadEnvelope>;
createEndpoint(component: NgLifeCycleEvents, filter: IPayloadFilt, processLatestOnly?: boolean): PayloadEndpoint;
createTupleLoader(component: NgLifeCycleEvents, filterUpdateCallable: IFilterUpdateCallable | IPayloadFilt): TupleLoader;
static ɵfac: i0.ɵɵFactoryDeclaration<VortexService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<VortexService>;
}