/// <reference path="../../typings/crypto-js/crypto-js.d.ts" />
import { Collection } from "./Collection";
import Handler from "./Handler";
export default class SocketPassport {
    private handler;
    private passportsDictionary;
    private allowedByDefault;
    constructor(handler: Handler);
    parseCookies(cookie: any): any;
    stringifyCookies(cookies: any): string;
    getIPV4(socketId: string): string;
    getSessionId(socket: SocketIO.Socket): string;
    encrypt(socket: SocketIO.Socket, passportObj: any): string;
    decrypt(socket: SocketIO.Socket, ciphertext: string): any;
    addPassport(socket: SocketIO.Socket, encryptedPassportObj: any): void;
    addDecryptedPassport(socket: SocketIO.Socket, passportObj: any): void;
    getPassport(socket: SocketIO.Socket | string): any;
    getSocketByPassport(passport: any): SocketIO.Socket;
    insecure(allowByDefault: boolean): void;
    hasRights(collection: Collection, methodName: string, socket: SocketIO.Socket | string, arg?: any): boolean;
}
