import { Type, Base } from "igniteui-react-core";
import { CT_GeomGuideList } from "./CT_GeomGuideList";
import { CT_AdjustHandleList } from "./CT_AdjustHandleList";
import { CT_ConnectionSiteList } from "./CT_ConnectionSiteList";
import { CT_GeomRect } from "./CT_GeomRect";
import { CT_Path2DList } from "./CT_Path2DList";
import { ST_ShapeType } from "./ST_ShapeType";
/**
 * @hidden
 */
export interface IEG_Geometry {
    _accept$2$i<TArg, TResult>($tArg: Type, $tResult: Type, a: IEG_GeometryVisitor$2<TArg, TResult>, b: TArg): TResult;
}
/**
 * @hidden
 */
export declare let IEG_Geometry_$type: Type;
/**
 * @hidden
 */
export declare class CT_CustomGeometry2D extends Base implements IEG_Geometry {
    static $t: Type;
    c: CT_GeomGuideList;
    d: CT_GeomGuideList;
    a: CT_AdjustHandleList;
    b: CT_ConnectionSiteList;
    e: CT_GeomRect;
    f: CT_Path2DList;
    g: string;
    _accept$2$i<TArg, TResult>($tArg: Type, $tResult: Type, a: IEG_GeometryVisitor$2<TArg, TResult>, b: TArg): TResult;
}
/**
 * @hidden
 */
export declare class CT_PresetGeometry2D extends Base implements IEG_Geometry {
    static $t: Type;
    a: CT_GeomGuideList;
    b: ST_ShapeType;
    _accept$2$i<TArg, TResult>($tArg: Type, $tResult: Type, a: IEG_GeometryVisitor$2<TArg, TResult>, b: TArg): TResult;
}
/**
 * @hidden
 */
export interface IEG_GeometryVisitor$2<TArg, TResult> {
    _visitCT_PresetGeometry2D$i(a: CT_PresetGeometry2D, b: TArg): TResult;
    _visitCT_CustomGeometry2D$i(a: CT_CustomGeometry2D, b: TArg): TResult;
}
/**
 * @hidden
 */
export declare let IEG_GeometryVisitor$2_$type: Type;
