import { AcApContext } from '../app';
import { AcEdCommand } from '../editor';
/**
 * Command to create one regular polygon.
 *
 * AutoCAD-like flow:
 * - Enter number of sides (3-1024)
 * - Specify center point or [Edge]
 * - Center branch: specify radius point, with [Inscribed/Circumscribed] switch
 * - Edge branch: specify first and second endpoints of one edge
 */
export declare class AcApPolygonCmd extends AcEdCommand {
    /**
     * Last accepted side count used as default for next command run.
     */
    private static _lastSides;
    /**
     * Creates POLYGON command instance.
     */
    constructor();
    /**
     * Command entry point.
     *
     * @param context - Current application/document context.
     */
    execute(context: AcApContext): Promise<void>;
    /**
     * Adds one localized keyword to a point prompt.
     *
     * @param prompt - Target prompt object.
     * @param key - Keyword translation key suffix.
     */
    private addKeyword;
    /**
     * Appends final polygon entity to model space.
     *
     * @param context - Current application/document context.
     * @param vertices - Polygon vertex list in world coordinates.
     */
    private appendPolygon;
    /**
     * Emits warning message for invalid polygon input.
     *
     * @param key - Invalid-input category.
     */
    private warnInvalidInput;
    /**
     * Prompts and validates polygon side count.
     *
     * @returns Valid side count, or `undefined` on cancel.
     */
    private promptSides;
    /**
     * Runs center-based polygon flow.
     *
     * @param context - Current application/document context.
     * @param sides - Number of polygon sides.
     * @param center - Picked polygon center point.
     */
    private runCenterFlow;
    /**
     * Runs edge-based polygon flow.
     *
     * @param context - Current application/document context.
     * @param sides - Number of polygon sides.
     */
    private runEdgeFlow;
}
//# sourceMappingURL=AcApPolygonCmd.d.ts.map