UNPKG

@skyway-sdk/rtc-api-client

Version:

The official Next Generation JavaScript SDK for SkyWay

40 lines 2.53 kB
import { Event, type SkyWayError } from '@skyway-sdk/common'; import type { Channel, Member, Publication, Subscription } from '@skyway-sdk/model'; import type { RtcRpcApiClient } from '@skyway-sdk/rtc-rpc-api-client'; import type { ChannelInit, ChannelQuery, MemberInit, PublicationInit, RtcApi, SubscriptionInit } from '../domain/api'; export declare class RtcApiImpl implements RtcApi { private _client; closed: boolean; readonly onClose: Event<void>; readonly onFatalError: Event<SkyWayError<Record<string, any>>>; constructor(_client: RtcRpcApiClient); /** @throws {@link SkyWayError} */ connect(): Promise<void>; updateAuthToken(token: string): Promise<void>; close(): void; private _commonError; /**@throws {@link SkyWayError} */ createChannel(appId: string, channelInit: ChannelInit): Promise<Channel>; getChannel(appId: string, { name, id }: ChannelQuery): Promise<Channel>; findOrCreateChannel(appId: string, query: ChannelInit): Promise<Channel>; deleteChannel(appId: string, id: Channel['id']): Promise<void>; updateChannelMetadata(appId: string, id: Channel['id'], metadata: string): Promise<void>; join(appId: string, channelId: Channel['id'], memberInit: MemberInit): Promise<Member>; updateMemberTtl(appId: string, channelId: Channel['id'], memberId: Member['id'], ttlSec: number): Promise<void>; /** * @returns Date.now() */ getServerUnixtime(appId: string): Promise<number>; updateMemberMetadata(appId: string, channelId: Channel['id'], memberId: Member['id'], metadata: string): Promise<void>; leave(appId: string, channelId: Channel['id'], memberId: Member['id']): Promise<void>; /**@throws {@link SkyWayError} */ publish(appId: string, init: PublicationInit): Promise<string>; updatePublicationMetadata(appId: string, channelId: Channel['id'], publicationId: Publication['id'], metadata: string): Promise<void>; disablePublication(appId: string, channelId: Channel['id'], publicationId: Publication['id']): Promise<void>; enablePublication(appId: string, channelId: Channel['id'], publicationId: Publication['id']): Promise<void>; unpublish(appId: string, channelId: Channel['id'], publicationId: Publication['id']): Promise<void>; /**@throws {@link SkyWayError} */ subscribe(appId: string, init: SubscriptionInit): Promise<string>; unsubscribe(appId: string, channelId: Channel['id'], subscriptionId: Subscription['id']): Promise<void>; } //# sourceMappingURL=api.d.ts.map