import { EntityEidType, BasicInfoAtomType, IPolylineATom, VisibleAtomType, EntityFlagAtomType, EntityOutlinerAtomType } from '../data-type';
/**
 * @interface ParabolaEntityAtomType
 * @param {string} type
 * @param {number} topHeight
 * @param {number} topScale
 * @param {number} width
 * @param {string} color
 * @param {boolean} gather
 */
export interface ParabolaEntityAtomType {
    type: string;
    topHeight: number;
    topScale: number;
    width: number;
    color: string;
    gather: boolean;
}
/**
 * @interface ParabolaType
 * @extends EntityEidType,Partial<BasicInfoAtomType>,Partial<VisibleAtomType>,Partial<EntityFlagAtomType>
 * @param {Partial<ParabolaEntityAtomType>} parabolaStyle (optional)
 * @param {Partial<IPolylineATom>} polyline (optional)
 */
export interface ParabolaType extends EntityEidType, Partial<BasicInfoAtomType>, Partial<VisibleAtomType>, Partial<EntityFlagAtomType>, Partial<EntityOutlinerAtomType> {
    parabolaStyle?: Partial<ParabolaEntityAtomType>;
    polyline?: Partial<IPolylineATom>;
}
/**
 * @interface IGenerate
 * @param {Partial<ParabolaEntityAtomType>} ParabolaEntityAtom (optional)
 * @param {Partial<BasicInfoAtomType>} BasicInfoAtom (optional)
 * @param {Partial<IPolylineATom>} PolylineAtom (optional)
 * @param {Partial<VisibleAtomType>} VisibleAtom (optional)
 * @param {Partial<EntityFlagAtomType>} EntityFlagAtom (optional)
 */
export interface IGenerate {
    ParabolaEntityAtom?: Partial<ParabolaEntityAtomType>;
    BasicInfoAtom?: Partial<BasicInfoAtomType>;
    PolylineAtom?: Partial<IPolylineATom>;
    VisibleAtom?: Partial<VisibleAtomType>;
    EntityFlagAtom?: Partial<EntityFlagAtomType>;
    EntityOutlinerAtom?: Partial<EntityOutlinerAtomType>;
}
