import { Coord2DType } from '../data-type';
/**
 * @interface IPickerRectangle
 * @param {Coord2DType} p0
 * @param {Coord2DType} p1
 * @param {boolean} bMustBeFullyEnclosed (optional)
 * @param {boolean} bHighlightPicked (optional)
 * @param {Array<string>} entityTypeFilter
 * @param {boolean} bFilterForExclude (optional)
 * @param {string} selectMode (optional)
 */
export interface IPickerRectangle {
    p0: Coord2DType;
    p1: Coord2DType;
    bMustBeFullyEnclosed?: boolean;
    bHighlightPicked?: boolean;
    entityTypeFilter: Array<string>;
    bFilterForExclude?: boolean;
    selectMode?: string;
}
/**
 * @interface IPickerMaterial
 * @param {Coord2DType} screenPos
 * @param {Array<string>} EntityTypeFilter
 * @param {boolean} bFilterForExclude (optional)
 */
export interface IPickerMaterial {
    screenPos: Coord2DType;
    EntityTypeFilter: Array<string>;
    bFilterForExclude?: boolean;
}
/**
 * @interface IPickerTilesNode
 * @param {Coord2DType} point1
 * @param {Coord2DType} point2
 * @param {boolean} bMustBeFullyEnclosed (optional)
 * @param {string} selectMode (optional)
 */
export interface IPickerTilesNode {
    point1: Coord2DType;
    point2: Coord2DType;
    bMustBeFullyEnclosed?: boolean;
    selectMode?: string;
}
/**
 * @interface IrectangleStyle
 * @param {string} borderColor
 * @param {number} borderThickness
 */
export interface IrectangleStyle {
    borderColor: string;
    borderThickness: number;
}
/**
 * @interface IRectPick
 * @param {boolean} bMustBeFullyEnclosed
 * @param {Array<string>} entityTypeFilter
 * @param {boolean} bFilterForExclude
 * @param {string} selectMode
 * @param {string} highlightColor
 * @param {Partial<IrectangleStyle>} rectangleStyle
 */
export interface IRectPick {
    bMustBeFullyEnclosed: boolean;
    entityTypeFilter: Array<string>;
    bFilterForExclude: boolean;
    selectMode: string;
    highlightColor: string;
    rectangleStyle: Partial<IrectangleStyle>;
}
