import type { BlockAttrs, BlockKind } from '../core/blocks.js'; export declare const COLOR_PALETTE: string[]; export declare function openColorPicker(anchor: HTMLElement, onPick: (color: string | null) => void, recents?: ReadonlyArray): void; /** * 블록 드롭다운에서 사용자가 고른 항목. * - `kind` 가 BlockKind 인 경우 일반 블록 추가/변환 * - `kind` 가 'importHtml' / 'importMarkdown' 인 경우 외부 가져오기 액션(특수 처리) */ export interface BlockTypeChoice { kind: BlockKind | 'importHtml' | 'importMarkdown'; attrs: BlockAttrs; } export declare function openBlockTypeDropdown(anchor: HTMLElement, onPick: (choice: BlockTypeChoice) => void): void; export declare function openAlignDropdown(anchor: HTMLElement, onPick: (value: 'left' | 'center' | 'right' | 'justify') => void): void; export interface FontFamilyChoice { id: string; label: string; stack: string; } /** * 글꼴 선택 드롭다운. 첫 호출 시 모든 글꼴 CSS 를 lazy 로드(Google Fonts + * Pretendard CDN), 항목 라벨은 각 글꼴 자신으로 미리보기 렌더한다. * * - `currentId` 가 지정되면 해당 글꼴 항목에 `aw-popover-item-active` 적용 * - 선택 시 `onPick(choice)` 호출 + 팝오버 닫힘 */ export declare function openFontFamilyDropdown(anchor: HTMLElement, onPick: (choice: FontFamilyChoice) => void, currentId?: string): void; export interface CodeLanguageChoice { id: string; label: string; } /** * 코드 블록의 언어 선택 드롭다운. highlight.ts 의 LANGUAGES 를 그대로 노출. * * - `currentId` 가 일치하는 항목에 active(✓) 표시 * - 선택 시 onPick(choice) 호출 + 팝오버 닫힘 */ export declare function openCodeLanguageDropdown(anchor: HTMLElement, onPick: (choice: CodeLanguageChoice) => void, currentId?: string): void; export type TableMenuAction = 'rowAbove' | 'rowBelow' | 'colLeft' | 'colRight' | 'deleteRow' | 'deleteCol'; /** * 표 편집 드롭다운 — 행/열 추가·삭제. 활성 블록이 table 일 때만 의미가 있어 * AerizEditor 가 toolbar 'tableMenu' 항목 클릭 시점에 호출. */ export declare function openTableMenuDropdown(anchor: HTMLElement, onPick: (action: TableMenuAction) => void): void; export interface FontSizeChoice { px: number; } /** * 글자 크기 프리셋 드롭다운. FONT_SIZES 의 px 값을 작은 라벨로 나열. * * - `currentPx` 가 일치하는 항목에 active 표시 * - 선택 시 `onPick({ px })` 호출 + 팝오버 닫힘 */ export declare function openFontSizeDropdown(anchor: HTMLElement, onPick: (choice: FontSizeChoice) => void, currentPx?: number): void; /** * 기능 미구현 메뉴 항목용 placeholder 드롭다운. * 항목명만 노출하고 "준비 중" 메시지를 보여준다. */ export declare function openComingSoonDropdown(anchor: HTMLElement, label: string): void; /** * 표 삽입 드롭다운. 모달 대신 anchor 아래에 떠 호버 위치에 따라 2x2 부터 * 12x12 까지 그리드가 동적으로 늘어난다. 셀을 클릭하면 onPick 호출 + 닫힘, * 외부 클릭 / Esc → 취소. */ export interface TableSizeChoice { rows: number; cols: number; } export declare function openTableDropdown(anchor: HTMLElement, onPick: (choice: TableSizeChoice) => void): void; //# sourceMappingURL=popovers.d.ts.map