import { Type, Base, Nullable$1 } from "igniteui-angular-core";
import { List$1 } from "igniteui-angular-core";
import { CT_DashStop } from "./CT_DashStop";
import { ST_PresetLineDashVal } from "./ST_PresetLineDashVal";
/**
 * @hidden
 */
export interface IEG_LineDashProperties {
    _accept$2$i<TArg, TResult>($tArg: Type, $tResult: Type, a: IEG_LineDashPropertiesVisitor$2<TArg, TResult>, b: TArg): TResult;
}
/**
 * @hidden
 */
export declare let IEG_LineDashProperties_$type: Type;
/**
 * @hidden
 */
export declare class CT_DashStopList extends Base implements IEG_LineDashProperties {
    static $t: Type;
    private a;
    readonly b: List$1<CT_DashStop>;
    _accept$2$i<TArg, TResult>($tArg: Type, $tResult: Type, a: IEG_LineDashPropertiesVisitor$2<TArg, TResult>, b: TArg): TResult;
}
/**
 * @hidden
 */
export declare class CT_PresetLineDashProperties extends Base implements IEG_LineDashProperties {
    static $t: Type;
    a: Nullable$1<ST_PresetLineDashVal>;
    _accept$2$i<TArg, TResult>($tArg: Type, $tResult: Type, a: IEG_LineDashPropertiesVisitor$2<TArg, TResult>, b: TArg): TResult;
}
/**
 * @hidden
 */
export interface IEG_LineDashPropertiesVisitor$2<TArg, TResult> {
    _visitCT_DashStopList$i(a: CT_DashStopList, b: TArg): TResult;
    _visitCT_PresetLineDashProperties$i(a: CT_PresetLineDashProperties, b: TArg): TResult;
}
/**
 * @hidden
 */
export declare let IEG_LineDashPropertiesVisitor$2_$type: Type;
