import { RequestHeader, ResponseHeader } from "../header";
import _m0 from "protobufjs/minimal";
export declare const protobufPackage = "bosdyn.api.spot_cam";
/**
 * PtzDescription provides information about a given PTZ. The name is usually all that's required to
 * describe a PTZ, but ListPtzResponse will include more information.
 */
export interface PtzDescription {
    /** Identifier of a particular controllable PTZ mechanism (real or virtual). */
    name: string;
    /** If a limit is not set, all positions are valid */
    panLimit: PtzDescription_Limits | undefined;
    /** Limits in degrees. */
    tiltLimit: PtzDescription_Limits | undefined;
    /** Limits in zoom level. */
    zoomLimit: PtzDescription_Limits | undefined;
}
/** Limits for a single axis. */
export interface PtzDescription_Limits {
    /** Units depend on the axis being controlled. */
    min: number | undefined;
    /** Units depend on the axis being controlled. */
    max: number | undefined;
}
/** Doubles as a description of current state, or a command for a new position. */
export interface PtzPosition {
    /**
     * The "mech" ptz can pan [0, 360] degrees,
     * tilt approximately [-30, 100] degrees where 0 is the horizon, IR and PTZ models differ
     * and zoom between 1x and 30x.
     */
    ptz: PtzDescription | undefined;
    /** degrees */
    pan: number | undefined;
    /** degrees */
    tilt: number | undefined;
    /** zoom level */
    zoom: number | undefined;
}
/** Doubles as a description of current state, or a command for a new velocity. */
export interface PtzVelocity {
    /** The "mech" ptz cannot be used with Velocity. */
    ptz: PtzDescription | undefined;
    /** degrees/second */
    pan: number | undefined;
    /** degrees/second */
    tilt: number | undefined;
    /** zoom level/second */
    zoom: number | undefined;
}
/** Request the current position of a ptz. */
export interface GetPtzPositionRequest {
    /** Common request header. */
    header: RequestHeader | undefined;
    /** Only the name is used. */
    ptz: PtzDescription | undefined;
}
/** Provides the current measured position. */
export interface GetPtzPositionResponse {
    /** Common response header. */
    header: ResponseHeader | undefined;
    /** Current position of the mechanism. */
    position: PtzPosition | undefined;
}
/** Request the velocity of a ptz */
export interface GetPtzVelocityRequest {
    /** Common request header. */
    header: RequestHeader | undefined;
    /** Only the name is used. */
    ptz: PtzDescription | undefined;
}
/** Provides the current measured velocity. */
export interface GetPtzVelocityResponse {
    /** Common response header. */
    header: ResponseHeader | undefined;
    /** Current velocity of the mechanism. */
    velocity: PtzVelocity | undefined;
}
/** Request all available ptzs on the SpotCam. */
export interface ListPtzRequest {
    /** Common request header. */
    header: RequestHeader | undefined;
}
/** Provide all available ptz on the SpotCam. */
export interface ListPtzResponse {
    /** Common response header. */
    header: ResponseHeader | undefined;
    /** List of ptzs, real and virtual. */
    ptzs: PtzDescription[];
}
/** Command the ptz to move to a position. */
export interface SetPtzPositionRequest {
    /** Common request header. */
    header: RequestHeader | undefined;
    /** Desired position to achieve. */
    position: PtzPosition | undefined;
}
/** Result of a SetPtzPositionRequest. */
export interface SetPtzPositionResponse {
    /** Common response header. */
    header: ResponseHeader | undefined;
    /** Applied desired position. */
    position: PtzPosition | undefined;
}
/** Command a velocity for a ptz. */
export interface SetPtzVelocityRequest {
    /** Common request header. */
    header: RequestHeader | undefined;
    /** Desired velocity to achieve. */
    velocity: PtzVelocity | undefined;
}
/** Result of a SetPtzVelocityRequest. */
export interface SetPtzVelocityResponse {
    /** Common response header. */
    header: ResponseHeader | undefined;
    /** Applied desired position. */
    velocity: PtzVelocity | undefined;
}
/** Command to reset PTZ autofocus */
export interface InitializeLensRequest {
    /** Common response header. */
    header: RequestHeader | undefined;
}
/** Result of a InitializeLensRequest. */
export interface InitializeLensResponse {
    /** Common response header. */
    header: ResponseHeader | undefined;
}
export declare const PtzDescription: {
    encode(message: PtzDescription, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): PtzDescription;
    fromJSON(object: any): PtzDescription;
    toJSON(message: PtzDescription): unknown;
    fromPartial<I extends {
        name?: string | undefined;
        panLimit?: {
            min?: number | undefined;
            max?: number | undefined;
        } | undefined;
        tiltLimit?: {
            min?: number | undefined;
            max?: number | undefined;
        } | undefined;
        zoomLimit?: {
            min?: number | undefined;
            max?: number | undefined;
        } | undefined;
    } & {
        name?: string | undefined;
        panLimit?: ({
            min?: number | undefined;
            max?: number | undefined;
        } & {
            min?: number | undefined;
            max?: number | undefined;
        } & { [K in Exclude<keyof I["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
        tiltLimit?: ({
            min?: number | undefined;
            max?: number | undefined;
        } & {
            min?: number | undefined;
            max?: number | undefined;
        } & { [K_1 in Exclude<keyof I["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
        zoomLimit?: ({
            min?: number | undefined;
            max?: number | undefined;
        } & {
            min?: number | undefined;
            max?: number | undefined;
        } & { [K_2 in Exclude<keyof I["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
    } & { [K_3 in Exclude<keyof I, keyof PtzDescription>]: never; }>(object: I): PtzDescription;
};
export declare const PtzDescription_Limits: {
    encode(message: PtzDescription_Limits, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): PtzDescription_Limits;
    fromJSON(object: any): PtzDescription_Limits;
    toJSON(message: PtzDescription_Limits): unknown;
    fromPartial<I extends {
        min?: number | undefined;
        max?: number | undefined;
    } & {
        min?: number | undefined;
        max?: number | undefined;
    } & { [K in Exclude<keyof I, keyof PtzDescription_Limits>]: never; }>(object: I): PtzDescription_Limits;
};
export declare const PtzPosition: {
    encode(message: PtzPosition, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): PtzPosition;
    fromJSON(object: any): PtzPosition;
    toJSON(message: PtzPosition): unknown;
    fromPartial<I extends {
        ptz?: {
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } | undefined;
        pan?: number | undefined;
        tilt?: number | undefined;
        zoom?: number | undefined;
    } & {
        ptz?: ({
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } & {
            name?: string | undefined;
            panLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K in Exclude<keyof I["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            tiltLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_1 in Exclude<keyof I["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            zoomLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_2 in Exclude<keyof I["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
        } & { [K_3 in Exclude<keyof I["ptz"], keyof PtzDescription>]: never; }) | undefined;
        pan?: number | undefined;
        tilt?: number | undefined;
        zoom?: number | undefined;
    } & { [K_4 in Exclude<keyof I, keyof PtzPosition>]: never; }>(object: I): PtzPosition;
};
export declare const PtzVelocity: {
    encode(message: PtzVelocity, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): PtzVelocity;
    fromJSON(object: any): PtzVelocity;
    toJSON(message: PtzVelocity): unknown;
    fromPartial<I extends {
        ptz?: {
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } | undefined;
        pan?: number | undefined;
        tilt?: number | undefined;
        zoom?: number | undefined;
    } & {
        ptz?: ({
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } & {
            name?: string | undefined;
            panLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K in Exclude<keyof I["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            tiltLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_1 in Exclude<keyof I["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            zoomLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_2 in Exclude<keyof I["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
        } & { [K_3 in Exclude<keyof I["ptz"], keyof PtzDescription>]: never; }) | undefined;
        pan?: number | undefined;
        tilt?: number | undefined;
        zoom?: number | undefined;
    } & { [K_4 in Exclude<keyof I, keyof PtzVelocity>]: never; }>(object: I): PtzVelocity;
};
export declare const GetPtzPositionRequest: {
    encode(message: GetPtzPositionRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): GetPtzPositionRequest;
    fromJSON(object: any): GetPtzPositionRequest;
    toJSON(message: GetPtzPositionRequest): unknown;
    fromPartial<I extends {
        header?: {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } | undefined;
        ptz?: {
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } | undefined;
    } & {
        header?: ({
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & { [K in Exclude<keyof I["header"], keyof RequestHeader>]: never; }) | undefined;
        ptz?: ({
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } & {
            name?: string | undefined;
            panLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_1 in Exclude<keyof I["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            tiltLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_2 in Exclude<keyof I["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            zoomLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_3 in Exclude<keyof I["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
        } & { [K_4 in Exclude<keyof I["ptz"], keyof PtzDescription>]: never; }) | undefined;
    } & { [K_5 in Exclude<keyof I, keyof GetPtzPositionRequest>]: never; }>(object: I): GetPtzPositionRequest;
};
export declare const GetPtzPositionResponse: {
    encode(message: GetPtzPositionResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): GetPtzPositionResponse;
    fromJSON(object: any): GetPtzPositionResponse;
    toJSON(message: GetPtzPositionResponse): unknown;
    fromPartial<I extends {
        header?: {
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } | undefined;
        position?: {
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } | undefined;
    } & {
        header?: ({
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } & {
            requestHeader?: ({
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & { [K in Exclude<keyof I["header"]["requestHeader"], keyof RequestHeader>]: never; }) | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: ({
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } & {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: ({
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & { [K_1 in Exclude<keyof I["header"]["error"]["data"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
            } & { [K_2 in Exclude<keyof I["header"]["error"], keyof import("../header").CommonError>]: never; }) | undefined;
            request?: ({
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & { [K_3 in Exclude<keyof I["header"]["request"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
        } & { [K_4 in Exclude<keyof I["header"], keyof ResponseHeader>]: never; }) | undefined;
        position?: ({
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & {
            ptz?: ({
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } & {
                name?: string | undefined;
                panLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_5 in Exclude<keyof I["position"]["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                tiltLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_6 in Exclude<keyof I["position"]["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                zoomLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_7 in Exclude<keyof I["position"]["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            } & { [K_8 in Exclude<keyof I["position"]["ptz"], keyof PtzDescription>]: never; }) | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & { [K_9 in Exclude<keyof I["position"], keyof PtzPosition>]: never; }) | undefined;
    } & { [K_10 in Exclude<keyof I, keyof GetPtzPositionResponse>]: never; }>(object: I): GetPtzPositionResponse;
};
export declare const GetPtzVelocityRequest: {
    encode(message: GetPtzVelocityRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): GetPtzVelocityRequest;
    fromJSON(object: any): GetPtzVelocityRequest;
    toJSON(message: GetPtzVelocityRequest): unknown;
    fromPartial<I extends {
        header?: {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } | undefined;
        ptz?: {
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } | undefined;
    } & {
        header?: ({
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & { [K in Exclude<keyof I["header"], keyof RequestHeader>]: never; }) | undefined;
        ptz?: ({
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } & {
            name?: string | undefined;
            panLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_1 in Exclude<keyof I["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            tiltLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_2 in Exclude<keyof I["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            zoomLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_3 in Exclude<keyof I["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
        } & { [K_4 in Exclude<keyof I["ptz"], keyof PtzDescription>]: never; }) | undefined;
    } & { [K_5 in Exclude<keyof I, keyof GetPtzVelocityRequest>]: never; }>(object: I): GetPtzVelocityRequest;
};
export declare const GetPtzVelocityResponse: {
    encode(message: GetPtzVelocityResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): GetPtzVelocityResponse;
    fromJSON(object: any): GetPtzVelocityResponse;
    toJSON(message: GetPtzVelocityResponse): unknown;
    fromPartial<I extends {
        header?: {
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } | undefined;
        velocity?: {
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } | undefined;
    } & {
        header?: ({
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } & {
            requestHeader?: ({
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & { [K in Exclude<keyof I["header"]["requestHeader"], keyof RequestHeader>]: never; }) | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: ({
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } & {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: ({
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & { [K_1 in Exclude<keyof I["header"]["error"]["data"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
            } & { [K_2 in Exclude<keyof I["header"]["error"], keyof import("../header").CommonError>]: never; }) | undefined;
            request?: ({
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & { [K_3 in Exclude<keyof I["header"]["request"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
        } & { [K_4 in Exclude<keyof I["header"], keyof ResponseHeader>]: never; }) | undefined;
        velocity?: ({
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & {
            ptz?: ({
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } & {
                name?: string | undefined;
                panLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_5 in Exclude<keyof I["velocity"]["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                tiltLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_6 in Exclude<keyof I["velocity"]["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                zoomLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_7 in Exclude<keyof I["velocity"]["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            } & { [K_8 in Exclude<keyof I["velocity"]["ptz"], keyof PtzDescription>]: never; }) | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & { [K_9 in Exclude<keyof I["velocity"], keyof PtzVelocity>]: never; }) | undefined;
    } & { [K_10 in Exclude<keyof I, keyof GetPtzVelocityResponse>]: never; }>(object: I): GetPtzVelocityResponse;
};
export declare const ListPtzRequest: {
    encode(message: ListPtzRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ListPtzRequest;
    fromJSON(object: any): ListPtzRequest;
    toJSON(message: ListPtzRequest): unknown;
    fromPartial<I extends {
        header?: {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } | undefined;
    } & {
        header?: ({
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & { [K in Exclude<keyof I["header"], keyof RequestHeader>]: never; }) | undefined;
    } & { [K_1 in Exclude<keyof I, "header">]: never; }>(object: I): ListPtzRequest;
};
export declare const ListPtzResponse: {
    encode(message: ListPtzResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): ListPtzResponse;
    fromJSON(object: any): ListPtzResponse;
    toJSON(message: ListPtzResponse): unknown;
    fromPartial<I extends {
        header?: {
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } | undefined;
        ptzs?: {
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        }[] | undefined;
    } & {
        header?: ({
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } & {
            requestHeader?: ({
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & { [K in Exclude<keyof I["header"]["requestHeader"], keyof RequestHeader>]: never; }) | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: ({
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } & {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: ({
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & { [K_1 in Exclude<keyof I["header"]["error"]["data"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
            } & { [K_2 in Exclude<keyof I["header"]["error"], keyof import("../header").CommonError>]: never; }) | undefined;
            request?: ({
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & { [K_3 in Exclude<keyof I["header"]["request"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
        } & { [K_4 in Exclude<keyof I["header"], keyof ResponseHeader>]: never; }) | undefined;
        ptzs?: ({
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        }[] & ({
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        } & {
            name?: string | undefined;
            panLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_5 in Exclude<keyof I["ptzs"][number]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            tiltLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_6 in Exclude<keyof I["ptzs"][number]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            zoomLimit?: ({
                min?: number | undefined;
                max?: number | undefined;
            } & {
                min?: number | undefined;
                max?: number | undefined;
            } & { [K_7 in Exclude<keyof I["ptzs"][number]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
        } & { [K_8 in Exclude<keyof I["ptzs"][number], keyof PtzDescription>]: never; })[] & { [K_9 in Exclude<keyof I["ptzs"], keyof {
            name?: string | undefined;
            panLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            tiltLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
            zoomLimit?: {
                min?: number | undefined;
                max?: number | undefined;
            } | undefined;
        }[]>]: never; }) | undefined;
    } & { [K_10 in Exclude<keyof I, keyof ListPtzResponse>]: never; }>(object: I): ListPtzResponse;
};
export declare const SetPtzPositionRequest: {
    encode(message: SetPtzPositionRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SetPtzPositionRequest;
    fromJSON(object: any): SetPtzPositionRequest;
    toJSON(message: SetPtzPositionRequest): unknown;
    fromPartial<I extends {
        header?: {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } | undefined;
        position?: {
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } | undefined;
    } & {
        header?: ({
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & { [K in Exclude<keyof I["header"], keyof RequestHeader>]: never; }) | undefined;
        position?: ({
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & {
            ptz?: ({
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } & {
                name?: string | undefined;
                panLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_1 in Exclude<keyof I["position"]["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                tiltLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_2 in Exclude<keyof I["position"]["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                zoomLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_3 in Exclude<keyof I["position"]["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            } & { [K_4 in Exclude<keyof I["position"]["ptz"], keyof PtzDescription>]: never; }) | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & { [K_5 in Exclude<keyof I["position"], keyof PtzPosition>]: never; }) | undefined;
    } & { [K_6 in Exclude<keyof I, keyof SetPtzPositionRequest>]: never; }>(object: I): SetPtzPositionRequest;
};
export declare const SetPtzPositionResponse: {
    encode(message: SetPtzPositionResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SetPtzPositionResponse;
    fromJSON(object: any): SetPtzPositionResponse;
    toJSON(message: SetPtzPositionResponse): unknown;
    fromPartial<I extends {
        header?: {
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } | undefined;
        position?: {
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } | undefined;
    } & {
        header?: ({
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } & {
            requestHeader?: ({
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & { [K in Exclude<keyof I["header"]["requestHeader"], keyof RequestHeader>]: never; }) | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: ({
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } & {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: ({
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & { [K_1 in Exclude<keyof I["header"]["error"]["data"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
            } & { [K_2 in Exclude<keyof I["header"]["error"], keyof import("../header").CommonError>]: never; }) | undefined;
            request?: ({
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & { [K_3 in Exclude<keyof I["header"]["request"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
        } & { [K_4 in Exclude<keyof I["header"], keyof ResponseHeader>]: never; }) | undefined;
        position?: ({
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & {
            ptz?: ({
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } & {
                name?: string | undefined;
                panLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_5 in Exclude<keyof I["position"]["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                tiltLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_6 in Exclude<keyof I["position"]["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                zoomLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_7 in Exclude<keyof I["position"]["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            } & { [K_8 in Exclude<keyof I["position"]["ptz"], keyof PtzDescription>]: never; }) | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & { [K_9 in Exclude<keyof I["position"], keyof PtzPosition>]: never; }) | undefined;
    } & { [K_10 in Exclude<keyof I, keyof SetPtzPositionResponse>]: never; }>(object: I): SetPtzPositionResponse;
};
export declare const SetPtzVelocityRequest: {
    encode(message: SetPtzVelocityRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SetPtzVelocityRequest;
    fromJSON(object: any): SetPtzVelocityRequest;
    toJSON(message: SetPtzVelocityRequest): unknown;
    fromPartial<I extends {
        header?: {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } | undefined;
        velocity?: {
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } | undefined;
    } & {
        header?: ({
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & { [K in Exclude<keyof I["header"], keyof RequestHeader>]: never; }) | undefined;
        velocity?: ({
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & {
            ptz?: ({
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } & {
                name?: string | undefined;
                panLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_1 in Exclude<keyof I["velocity"]["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                tiltLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_2 in Exclude<keyof I["velocity"]["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                zoomLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_3 in Exclude<keyof I["velocity"]["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            } & { [K_4 in Exclude<keyof I["velocity"]["ptz"], keyof PtzDescription>]: never; }) | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & { [K_5 in Exclude<keyof I["velocity"], keyof PtzVelocity>]: never; }) | undefined;
    } & { [K_6 in Exclude<keyof I, keyof SetPtzVelocityRequest>]: never; }>(object: I): SetPtzVelocityRequest;
};
export declare const SetPtzVelocityResponse: {
    encode(message: SetPtzVelocityResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): SetPtzVelocityResponse;
    fromJSON(object: any): SetPtzVelocityResponse;
    toJSON(message: SetPtzVelocityResponse): unknown;
    fromPartial<I extends {
        header?: {
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } | undefined;
        velocity?: {
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } | undefined;
    } & {
        header?: ({
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } & {
            requestHeader?: ({
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & { [K in Exclude<keyof I["header"]["requestHeader"], keyof RequestHeader>]: never; }) | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: ({
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } & {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: ({
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & { [K_1 in Exclude<keyof I["header"]["error"]["data"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
            } & { [K_2 in Exclude<keyof I["header"]["error"], keyof import("../header").CommonError>]: never; }) | undefined;
            request?: ({
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & { [K_3 in Exclude<keyof I["header"]["request"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
        } & { [K_4 in Exclude<keyof I["header"], keyof ResponseHeader>]: never; }) | undefined;
        velocity?: ({
            ptz?: {
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & {
            ptz?: ({
                name?: string | undefined;
                panLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                tiltLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
                zoomLimit?: {
                    min?: number | undefined;
                    max?: number | undefined;
                } | undefined;
            } & {
                name?: string | undefined;
                panLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_5 in Exclude<keyof I["velocity"]["ptz"]["panLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                tiltLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_6 in Exclude<keyof I["velocity"]["ptz"]["tiltLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
                zoomLimit?: ({
                    min?: number | undefined;
                    max?: number | undefined;
                } & {
                    min?: number | undefined;
                    max?: number | undefined;
                } & { [K_7 in Exclude<keyof I["velocity"]["ptz"]["zoomLimit"], keyof PtzDescription_Limits>]: never; }) | undefined;
            } & { [K_8 in Exclude<keyof I["velocity"]["ptz"], keyof PtzDescription>]: never; }) | undefined;
            pan?: number | undefined;
            tilt?: number | undefined;
            zoom?: number | undefined;
        } & { [K_9 in Exclude<keyof I["velocity"], keyof PtzVelocity>]: never; }) | undefined;
    } & { [K_10 in Exclude<keyof I, keyof SetPtzVelocityResponse>]: never; }>(object: I): SetPtzVelocityResponse;
};
export declare const InitializeLensRequest: {
    encode(message: InitializeLensRequest, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): InitializeLensRequest;
    fromJSON(object: any): InitializeLensRequest;
    toJSON(message: InitializeLensRequest): unknown;
    fromPartial<I extends {
        header?: {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } | undefined;
    } & {
        header?: ({
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & {
            requestTimestamp?: Date | undefined;
            clientName?: string | undefined;
            disableRpcLogging?: boolean | undefined;
        } & { [K in Exclude<keyof I["header"], keyof RequestHeader>]: never; }) | undefined;
    } & { [K_1 in Exclude<keyof I, "header">]: never; }>(object: I): InitializeLensRequest;
};
export declare const InitializeLensResponse: {
    encode(message: InitializeLensResponse, writer?: _m0.Writer): _m0.Writer;
    decode(input: _m0.Reader | Uint8Array, length?: number): InitializeLensResponse;
    fromJSON(object: any): InitializeLensResponse;
    toJSON(message: InitializeLensResponse): unknown;
    fromPartial<I extends {
        header?: {
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } | undefined;
    } & {
        header?: ({
            requestHeader?: {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } | undefined;
            request?: {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } | undefined;
        } & {
            requestHeader?: ({
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & {
                requestTimestamp?: Date | undefined;
                clientName?: string | undefined;
                disableRpcLogging?: boolean | undefined;
            } & { [K in Exclude<keyof I["header"]["requestHeader"], keyof RequestHeader>]: never; }) | undefined;
            requestReceivedTimestamp?: Date | undefined;
            responseTimestamp?: Date | undefined;
            error?: ({
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } | undefined;
            } & {
                code?: import("../header").CommonError_Code | undefined;
                message?: string | undefined;
                data?: ({
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & {
                    typeUrl?: string | undefined;
                    value?: Uint8Array | undefined;
                } & { [K_1 in Exclude<keyof I["header"]["error"]["data"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
            } & { [K_2 in Exclude<keyof I["header"]["error"], keyof import("../header").CommonError>]: never; }) | undefined;
            request?: ({
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & {
                typeUrl?: string | undefined;
                value?: Uint8Array | undefined;
            } & { [K_3 in Exclude<keyof I["header"]["request"], keyof import("../../../google/protobuf/any").Any>]: never; }) | undefined;
        } & { [K_4 in Exclude<keyof I["header"], keyof ResponseHeader>]: never; }) | undefined;
    } & { [K_5 in Exclude<keyof I, "header">]: never; }>(object: I): InitializeLensResponse;
};
declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
    [K in keyof T]?: DeepPartial<T[K]>;
} : Partial<T>;
declare type KeysOfUnion<T> = T extends T ? keyof T : never;
export declare type Exact<P, I extends P> = P extends Builtin ? P : P & {
    [K in keyof P]: Exact<P[K], I[K]>;
} & {
    [K in Exclude<keyof I, KeysOfUnion<P>>]: never;
};
export {};
//# sourceMappingURL=ptz.d.ts.map