import { MessagePort, Worker } from 'worker_threads';
import { BaseServiceConnection, BaseClientConnection, Message, RequestType, Params } from '../common/connection';
export declare class ClientConnection<Requests extends RequestType | undefined = undefined, ReadyParams extends Params | undefined = undefined> extends BaseClientConnection<Requests, ReadyParams> {
    private readonly port;
    constructor(port: MessagePort | Worker);
    protected postMessage(sharedArrayBuffer: SharedArrayBuffer): void;
}
export declare class ServiceConnection<RequestHandlers extends RequestType | undefined = undefined, ReadyParams extends Params | undefined = undefined> extends BaseServiceConnection<RequestHandlers, ReadyParams> {
    private readonly port;
    constructor(port: MessagePort | Worker);
    protected postMessage(message: Message): void;
}
