import { EntityEidType, BasicInfoAtomType, TransformAtomType, VisibleAtomType } from './data-type';
export interface IWimPipeBaseInfoAtom {
    pipeUrl: string;
    groupType: string;
}
export interface IWimPipeBaseInfoAtomType extends EntityEidType, Partial<BasicInfoAtomType>, Partial<TransformAtomType>, Partial<VisibleAtomType> {
    wimPipeStyle?: Partial<IWimPipeBaseInfoAtom>;
}
export interface IGenerate {
    WimPipeBaseInfoAtom?: Partial<IWimPipeBaseInfoAtom>;
    BasicInfoAtom?: Partial<BasicInfoAtomType>;
    TransformAtom?: Partial<TransformAtomType>;
    VisibleAtom?: Partial<VisibleAtomType>;
}
export interface IEid {
    eid: string | null;
}
export interface IEntity {
    object: Record<string, any>;
}
export interface IPipeFieldList {
    fields: Array<any>;
}
export interface ICreateWimPipeEntity {
    pipeUrl: string;
    groupType: string;
    fieldList?: IPipeFieldList;
}
export interface ISetPipeClickStatus {
    status: boolean;
}
export interface ISetPipeHeight {
    pipeHeight: number;
    fIds?: Array<string>;
    types?: Array<string | number>;
}
export interface ISetPipeHighLight {
    highLightInst?: number;
    highLightType?: number;
    highLightColor?: string;
    fIds?: Array<string>;
    types?: Array<string | number>;
}
export interface ISetPipeBaseColor {
    color?: string;
    strength?: number;
    isOpen?: boolean;
    fIds?: Array<string>;
    types?: Array<string | number>;
}
export interface IPipeCoordquery {
    fid: string;
    pitch?: number;
    yaw?: number;
    distanceFactor?: number;
    fixedDistance?: number;
    flyTime?: number;
}
export interface IPipeLabel {
    fid: string;
    type?: string;
}
export interface IAddLabels extends IPipeLabel {
}
export interface IDeleteLabels extends IPipeLabel {
}
export interface IScaleLabel extends IPipeLabel {
    scale?: number;
    bAll?: boolean;
}
export interface ISetPipeShowState {
    visible?: boolean;
    fIds?: Array<string>;
    types?: Array<string | number>;
}
export interface IResetData {
}
export interface ISetPipeLiquidLevel {
    fIds?: Array<string>;
    pipeLiquidLevel?: number;
    pipeLiquidLevels?: Array<number>;
    color?: string;
    isOpen?: boolean;
    isFlow?: boolean;
}
export interface IGetPipeLocation {
    fid: string;
}
export interface ISetPipeFlowState {
    visible?: boolean;
    fIds?: Array<string>;
    flow?: number;
    type?: number;
    color?: string;
    reset?: boolean;
}
export interface IOpenPipeSection {
    points: Array<any>;
}
export interface ISetPipeCullDistance {
    cullDistance: number;
}
export interface ISetPipeDigArea {
    coordinates: Array<any>;
    depth?: number;
    getPipeIds?: boolean;
}
export interface IClearPipeDigArea {
}
export interface IGetLinkedPipeFids {
    fId: string;
    type?: string;
}
export interface IGetAttributesbyFid {
    fId: string;
    type?: string;
}
export interface IGetIntersectedPipeID {
}
export interface IGetPipesInRange {
    gISPositions: Array<any>;
    bOnlyIntersected?: boolean;
}
export interface IGetPipesInRadius {
    fid: string;
    radius?: number;
}
export interface IGetPipeTopology {
    pipeLineEid: string | null;
    pipeWellEid: string | null;
    fid: string;
    bPipeLineFid?: boolean;
    level?: number;
}
export interface IOnPipeElementClicked {
    eid: string;
    fid: string;
    location: Array<number>;
    types: Record<string, any>;
}
export interface IOnPipeLoadWarnings {
    eid: string;
    info: Array<any>;
}
