kucoin-universal-sdk
Version:
Official KuCoin Universal SDK.
64 lines (63 loc) • 2.35 kB
TypeScript
import { DomainType } from '../../model/constant';
import { WsToken, WsTokenProvider } from '../interfaces/websocket';
import { DefaultTransport } from './default_transport';
import { RestResponse } from '../../model/common';
/**
* TokenResponse interface defining the structure of the WebSocket token response
*/
interface TokenResponse {
commonResponse?: RestResponse;
token?: string;
instanceServers?: WsToken[];
}
/**
* Implementation of TokenResponse with validation and serialization methods
*/
export declare class TokenResponseImpl implements TokenResponse {
commonResponse?: RestResponse;
token?: string;
instanceServers?: WsToken[];
constructor(data?: Partial<TokenResponse>);
/**
* Sets the common response for the token response
* @param response - RestResponse object to set
*/
setCommonResponse(response: RestResponse): void;
/**
* Creates a TokenResponse instance from a JSON string
* @param jsonStr - JSON string to parse
* @returns TokenResponseImpl instance or null if parsing fails
*/
static fromJSON(jsonStr: string): TokenResponseImpl | null;
/**
* Creates a TokenResponse instance from a dictionary object
* @param obj - Object to convert to TokenResponse
* @returns TokenResponseImpl instance or null if conversion fails
*/
static fromDict(obj: Record<string, any> | null): TokenResponseImpl | null;
fromJson(input: string): TokenResponseImpl;
toJson(): string;
fromObject(jsonObject: Object): TokenResponseImpl;
}
/**
* Default implementation of the WebSocket token provider
* Handles token retrieval and management for WebSocket connections
*/
export declare class DefaultWsTokenProvider implements WsTokenProvider {
private readonly transport;
private readonly domain;
private readonly isPrivate;
constructor(transport: DefaultTransport, domain: DomainType, isPrivate: boolean);
/**
* Retrieves WebSocket tokens from the server
* @returns Promise resolving to array of WsToken objects
* @throws Error if token retrieval fails
*/
getToken(): Promise<WsToken[]>;
/**
* Closes the token provider and its associated transport
* @returns A promise that resolves when the transport is closed
*/
close(): Promise<void>;
}
export {};