import { Event } from '@skyway-sdk/common'; import type model from '@skyway-sdk/model'; import type { SkyWayChannel } from '../../channel'; import type { SkyWayContext } from '../../context'; import type { LocalPersonImpl } from '../../member/localPerson'; import type { RemoteMemberImplInterface } from '../../member/remoteMember'; export interface SkyWayPluginInterface { subtype: string; } /**@internal */ export declare abstract class SkyWayPlugin implements SkyWayPluginInterface { subtype: string; /**@internal */ _context?: SkyWayContext; /**@internal */ _onContextAttached: Event; /**@internal */ _attachContext(context: SkyWayContext): void; /**@internal */ _whenCreateLocalPerson?: (member: LocalPersonImpl) => Promise; /**@internal */ _whenDisposeLocalPerson?: (member: LocalPersonImpl) => Promise; /**@internal */ abstract _createRemoteMember(channel: SkyWayChannel, memberDto: model.Member): RemoteMemberImplInterface; } //# sourceMappingURL=plugin.d.ts.map