/// import { TransportContext } from "./context/transport"; import { DtlsContext } from "./context/dtls"; import { CipherContext } from "./context/cipher"; import { Transport } from "./transport"; import { Extension } from "./typings/domain"; import { SrtpContext } from "./context/srtp"; export declare type Options = { transport: Transport; srtpProfiles?: number[]; cert?: string; key?: string; certificateRequest?: boolean; }; export declare class DtlsSocket { options: Options; isClient: boolean; onConnect: () => void; onData: (buf: Buffer) => void; onClose: () => void; udp: TransportContext; dtls: DtlsContext; cipher: CipherContext; srtp: SrtpContext; extensions: Extension[]; constructor(options: Options, isClient: boolean); private setupExtensions; send(buf: Buffer): void; close(): void; extractSessionKeys(): { localKey: any; localSalt: any; remoteKey: any; remoteSalt: any; }; exportKeyingMaterial(label: string, length: number): Buffer; }