/**
 * Creates a perspective camera.
 *
 *
 */
import { TypedSopNode } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { CameraNodeType } from '../../poly/NodeContext';
import { OnNodeRegisterCallback } from '../../poly/registers/nodes/NodesRegister';
declare class PerspectiveCameraSopParamsConfig extends NodeParamsConfig {
    default: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FOLDER>;
    /** @param camera fov */
    fov: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param camera near */
    near: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param camera far */
    far: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param camera position */
    position: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param camera rotation */
    rotation: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.VECTOR3>;
    /** @param show helper */
    showHelper: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param matrixAutoUpdate */
    matrixAutoUpdate: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BOOLEAN>;
    /** @param camera name */
    name: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.STRING>;
    /** @param set main camera */
    updateTransformFromCamera: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.BUTTON>;
    PBR: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FOLDER>;
    /** @param apertureBlades */
    apertureBlades: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    /** @param apertureBlades */
    fStop: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param focusDistance */
    focusDistance: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param apertureRotation */
    apertureRotation: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
    /** @param anamorphicRatio */
    anamorphicRatio: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.FLOAT>;
}
export declare class PerspectiveCameraSopNode extends TypedSopNode<PerspectiveCameraSopParamsConfig> {
    readonly paramsConfig: PerspectiveCameraSopParamsConfig;
    static type(): CameraNodeType;
    static onRegister: OnNodeRegisterCallback;
    protected initializeNode(): void;
    private _operation;
    cook(inputCoreGroups: CoreGroup[]): void;
}
export {};
