/**
 * Creates a line displaying the connections between 2 quads.
 *
 *
 */
import { QuadSopNode } from './_BaseQuad';
import { NodeParamsConfig } from '../utils/params/ParamsConfig';
import { CoreGroup } from '../../../core/geometry/Group';
import { SopType } from '../../poly/registers/nodes/types/Sop';
export declare enum QuadConnectionMode {
    NEIGHBOUR_INDEX = "neighbourIndex",
    QUAD_ID = "quadId"
}
export declare const QUAD_CONNECTION_MODES: QuadConnectionMode[];
export declare enum QuadConnectionType {
    STRAIGHT = "straight",
    DIAGONAL = "diagonal"
}
export declare const QUAD_CONNECTION_TYPES: QuadConnectionType[];
declare class QuadConnectionSopParamsConfig extends NodeParamsConfig {
    mode: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    type: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    quadId0: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    quadId1: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
    neighbourIndex: import("../utils/params/ParamsConfig").ParamTemplate<import("../../index_all").ParamType.INTEGER>;
}
export declare class QuadConnectionSopNode extends QuadSopNode<QuadConnectionSopParamsConfig> {
    readonly paramsConfig: QuadConnectionSopParamsConfig;
    static type(): SopType;
    protected initializeNode(): void;
    setConnectionMode(mode: QuadConnectionMode): void;
    connectionMode(): QuadConnectionMode;
    setConnectionType(type: QuadConnectionType): void;
    connectionType(): QuadConnectionType;
    cook(inputCoreGroups: CoreGroup[]): Promise<void>;
    private _process;
}
export {};
