import { Socket } from "./socket";
export declare const MemoryDefaultToken = "f";
export interface ChannelData {
    name: string;
    token: string;
    type: string;
}
export declare class Channel {
    private p_memToken;
    private p_token;
    private p_data;
    private p_completed;
    private listeners;
    constructor(token: string, data: ChannelData, memToken?: string);
    get token(): string;
    get name(): string;
    get type(): string;
    get memToken(): string;
    events(memToken: string, list: any): void;
    on(name: string, fn: Function): void;
}
export declare class ChannelsInstance {
    private channels;
    listeners: {
        events: Function;
    };
    constructor();
    join(token: string, data: ChannelData, memToken?: string): Channel;
    leave(token: string): void;
    leaveAll(): void;
    get(token: string): Channel | null;
    on(name: string, fn: Function): void;
    leaveAction(event: any): void;
    joinAction(event: any): void;
    attach(socket: Socket): void;
}
export declare const Channels: ChannelsInstance;
//# sourceMappingURL=channel.d.ts.map