import { AcApContext, AcApHatchCmd, HatchSettings } from '@mlightcad/cad-simple-viewer'; import { AcCmColor, AcDbHatch, AcDbHatchObjectType } from '@mlightcad/data-model'; export type HatchRibbonStyle = 'Normal' | 'Outer' | 'Ignore'; export type HatchFillType = 'solid' | 'pattern' | 'gradient'; export interface HatchRibbonState { patternName: string; hatchObjectType: AcDbHatchObjectType; patternScale: number; patternAngle: number; style: HatchRibbonStyle; associative: boolean; fillType: HatchFillType; fillColor: string; backgroundColor: string; gradient2Color: string; opacity: number; } type HatchColorInput = string | AcCmColor; export declare class AcApHatchRibbonCmd extends AcApHatchCmd { private readonly _state; private _isActive; private _queuedAction; private _sysVarChangeListener; private _settingsProxy; private readonly _activeHatchIds; constructor(); syncStateFromSysVars(): void; private initializeSettingsProxy; private initializeSysVarListener; get state(): Readonly; get isActive(): boolean; private normalizeColorString; private toAcCmColor; private normalizeNumber; private normalizePositiveNumber; private degreesToRadians; private radiansToDegrees; private normalizeTransparencyPercentage; private createTransparency; private getSelectedHatches; private getFillPatternName; private inferFillTypeFromPatternName; private getGradientName; private inferHatchObjectTypeFromFillType; private toRgb; private applyStateToSelectedHatches; private applyStateToHatch; setPatternName(value: string): void; setPatternNameFromGallery(value: string): void; setPatternScale(value: number): void; setPatternAngle(value: number): void; setStyle(value: HatchRibbonStyle): void; setAssociative(value: boolean): void; setFillType(value: HatchFillType): void; setFillColor(value: HatchColorInput): void; setBackgroundColor(value: HatchColorInput): void; setGradient2Color(value: HatchColorInput): void; setOpacity(value: number): void; requestPickPoints(): void; requestSelectObjects(): void; close(): void; protected get settings(): HatchSettings; protected configureHatch(hatch: AcDbHatch): void; execute(context: AcApContext): Promise; private requestAction; private consumeQueuedAction; private runRibbonAction; private runKeyword; private createBoundaryPrompt; private cancelActivePrompt; } export declare const hatchRibbonCommand: AcApHatchRibbonCmd; export {}; //# sourceMappingURL=AcApHatchRibbonCmd.d.ts.map