import type { NobjcObject } from "objc-js";
import type { _NSArray } from "./NSArray.js";
import type { _NSCoder } from "./NSCoder.js";
import type { _NSConnection } from "./NSConnection.js";
import type { _NSPort } from "./NSPort.js";
export declare class _NSPortCoder extends _NSCoder {
    static alloc(): _NSPortCoder;
    static new(): _NSPortCoder;
    init(): _NSPortCoder;
    /** @deprecated */
    static portCoderWithReceivePort$sendPort$components$(rcvPort: _NSPort | null, sndPort: _NSPort | null, comps: _NSArray | null): NobjcObject;
    isBycopy(): boolean;
    /** @deprecated */
    isByref(): boolean;
    /** @deprecated */
    encodePortObject$(aport: _NSPort): void;
    /** @deprecated */
    decodePortObject(): _NSPort | null;
    /**
     * The following methods are deprecated. Instead of using these methods, NSPort subclasses should look up an NSConnection object using +connectionWithReceivePort:sendPort: and then ask that object to dispatch recieved component data using -dispatchWithComponents:. The NSConnection object will take care of creating the right kind of NSPortCoder object and giving it the data to decode and dispatch.
     * @deprecated
     */
    connection(): _NSConnection | null;
    /** @deprecated */
    initWithReceivePort$sendPort$components$(rcvPort: _NSPort | null, sndPort: _NSPort | null, comps: _NSArray | null): NobjcObject;
    /** @deprecated */
    dispatch(): void;
}
