/** * Public union of every built-in Blok translation key. * * AUTO-GENERATED from `src/components/i18n/locales/en.json` by * `scripts/generate-message-keys-dts.mjs`. Do NOT edit by hand — re-run the * script whenever built-in keys change. * * Self-contained (no `../src` re-export) so consumers' `tsc` never pulls raw * implementation source into their program. Kept in sync with en.json by * `test/unit/architecture/published-types-no-src-refs.test.ts`. */ /** * A translation key targeting a tool's toolbox label. The `toolNames.` prefix * is the documented namespace contract for tool display names; `` is the * tool's registration name (`toolNames.paragraph`, `toolNames.header`). Custom * tools use the same convention, which is why it is an open template type. */ export type ToolNameMessageKey = `toolNames.${string}`; /** * Every built-in translation key shipped in en.json. A stable, typed contract: * a renamed or removed key surfaces as a compile error at every override site * typed against it, instead of a silent fallback to the default string. */ export type BlokMessageKey = | 'a11y.allBlocksSelected' | 'a11y.atBottom' | 'a11y.atTop' | 'a11y.back' | 'a11y.blockDuplicated' | 'a11y.blockMoved' | 'a11y.blockToolbar' | 'a11y.blocksDuplicated' | 'a11y.blocksMoved' | 'a11y.blocksSelected' | 'a11y.dragHandle' | 'a11y.dragHandleRole' | 'a11y.dragStarted' | 'a11y.dragStartedMultiple' | 'a11y.dropCancelled' | 'a11y.dropCreateColumnLeft' | 'a11y.dropCreateColumnRight' | 'a11y.dropPosition' | 'a11y.insertBlock' | 'a11y.movedDown' | 'a11y.movedUp' | 'a11y.navigatedToBlock' | 'a11y.navigationModeEntered' | 'a11y.navigationModeExited' | 'a11y.navigationPosition' | 'a11y.searchResults' | 'a11y.textFormatting' | 'blockSettings.blocksSelected' | 'blockSettings.clickAction' | 'blockSettings.clickToOpenMenu' | 'blockSettings.convertWithChildrenWarning' | 'blockSettings.copyLink' | 'blockSettings.copyLinkError' | 'blockSettings.copyLinkSuccess' | 'blockSettings.delete' | 'blockSettings.dragToMove' | 'blockSettings.duplicate' | 'blockSettings.lastEdited' | 'blockSettings.lastEditedBy' | 'blockSettings.menuShortcutMac' | 'blockSettings.menuShortcutWin' | 'blockSettings.openMenuAction' | 'blockSettings.orConjunction' | 'emoji.nothingFound' | 'emoji.search' | 'notifier.cancel' | 'notifier.confirm' | 'notifier.dismiss' | 'notifier.ok' | 'popover.actions' | 'popover.convertTo' | 'popover.nothingFound' | 'popover.search' | 'presence.anonymous.asteroid' | 'presence.anonymous.astronaut' | 'presence.anonymous.comet' | 'presence.anonymous.galaxy' | 'presence.anonymous.moon' | 'presence.anonymous.planet' | 'presence.anonymous.rocket' | 'presence.anonymous.satellite' | 'presence.anonymous.saucer' | 'presence.anonymous.star' | 'presence.anonymous.sun' | 'presence.anonymous.telescope' | 'presence.anonymous.unknown' | 'searchTerms.accordion' | 'searchTerms.alert' | 'searchTerms.blockquote' | 'searchTerms.bullet' | 'searchTerms.callout' | 'searchTerms.check' | 'searchTerms.checkbox' | 'searchTerms.citation' | 'searchTerms.code' | 'searchTerms.collapse' | 'searchTerms.collapsible' | 'searchTerms.columns' | 'searchTerms.delimiter' | 'searchTerms.divider' | 'searchTerms.expand' | 'searchTerms.gap' | 'searchTerms.grid' | 'searchTerms.header' | 'searchTerms.heading' | 'searchTerms.info' | 'searchTerms.layout' | 'searchTerms.list' | 'searchTerms.note' | 'searchTerms.number' | 'searchTerms.ordered' | 'searchTerms.paragraph' | 'searchTerms.plain' | 'searchTerms.pre' | 'searchTerms.program' | 'searchTerms.quote' | 'searchTerms.separator' | 'searchTerms.snippet' | 'searchTerms.space' | 'searchTerms.spacer' | 'searchTerms.splitter' | 'searchTerms.spreadsheet' | 'searchTerms.table' | 'searchTerms.task' | 'searchTerms.tip' | 'searchTerms.title' | 'searchTerms.todo' | 'searchTerms.toggle' | 'searchTerms.unordered' | 'searchTerms.warning' | 'toolNames.audio' | 'toolNames.board' | 'toolNames.bold' | 'toolNames.bookmark' | 'toolNames.bulletedList' | 'toolNames.callout' | 'toolNames.clearFormat' | 'toolNames.code' | 'toolNames.columns' | 'toolNames.database' | 'toolNames.divider' | 'toolNames.embed' | 'toolNames.equation' | 'toolNames.file' | 'toolNames.heading' | 'toolNames.image' | 'toolNames.inlineCode' | 'toolNames.italic' | 'toolNames.link' | 'toolNames.marker' | 'toolNames.numberedList' | 'toolNames.quote' | 'toolNames.spacer' | 'toolNames.strikethrough' | 'toolNames.supSub' | 'toolNames.text' | 'toolNames.todoList' | 'toolNames.toggleList' | 'toolNames.underline' | 'toolNames.video' | 'toolbox.addBelow' | 'toolbox.ctrlAddAbove' | 'toolbox.optionAddAbove' | 'toolbox.sectionAdvanced' | 'toolbox.sectionBasic' | 'toolbox.sectionColor' | 'toolbox.sectionDatabase' | 'toolbox.sectionMedia' | 'toolbox.typeToSearch' | 'tools.audio.alignment' | 'tools.audio.alignmentCenter' | 'tools.audio.alignmentLeft' | 'tools.audio.alignmentRight' | 'tools.audio.artistPlaceholder' | 'tools.audio.caption' | 'tools.audio.captionPlaceholder' | 'tools.audio.copyUrl' | 'tools.audio.coverAdd' | 'tools.audio.coverChange' | 'tools.audio.coverChooseFile' | 'tools.audio.coverDropToUpload' | 'tools.audio.coverErrorTooLarge' | 'tools.audio.coverErrorType' | 'tools.audio.coverInsert' | 'tools.audio.coverLink' | 'tools.audio.coverOrDropHere' | 'tools.audio.coverRemove' | 'tools.audio.coverSet' | 'tools.audio.coverSourceAria' | 'tools.audio.coverUpload' | 'tools.audio.coverUrlAria' | 'tools.audio.coverUrlPlaceholder' | 'tools.audio.download' | 'tools.audio.emptyAddAudio' | 'tools.audio.emptyChooseFile' | 'tools.audio.emptyDropToUpload' | 'tools.audio.emptyInsert' | 'tools.audio.emptyLink' | 'tools.audio.emptyMaxSize' | 'tools.audio.emptyOrDropHere' | 'tools.audio.emptySourceAria' | 'tools.audio.emptyUpload' | 'tools.audio.emptyUrlAria' | 'tools.audio.emptyUrlPlaceholder' | 'tools.audio.errorFileTooLarge' | 'tools.audio.errorGoogleDrive' | 'tools.audio.errorOneDrive' | 'tools.audio.errorReplace' | 'tools.audio.errorUploadFailed' | 'tools.audio.loop' | 'tools.audio.mute' | 'tools.audio.pause' | 'tools.audio.play' | 'tools.audio.playbackSpeed' | 'tools.audio.replace' | 'tools.audio.speedDecrease' | 'tools.audio.speedIncrease' | 'tools.audio.titlePlaceholder' | 'tools.audio.unmute' | 'tools.audio.uploading' | 'tools.audio.volume' | 'tools.bookmark.empty' | 'tools.bookmark.error' | 'tools.bookmark.loading' | 'tools.callout.addEmoji' | 'tools.callout.calloutEmojiCategory' | 'tools.callout.clearEmojiSearch' | 'tools.callout.color' | 'tools.callout.colorBlue' | 'tools.callout.colorBrown' | 'tools.callout.colorDefault' | 'tools.callout.colorGray' | 'tools.callout.colorGreen' | 'tools.callout.colorOrange' | 'tools.callout.colorPink' | 'tools.callout.colorPurple' | 'tools.callout.colorRed' | 'tools.callout.colorTeal' | 'tools.callout.colorYellow' | 'tools.callout.editIcon' | 'tools.callout.emojiCategoryActivity' | 'tools.callout.emojiCategoryFlags' | 'tools.callout.emojiCategoryFood' | 'tools.callout.emojiCategoryNature' | 'tools.callout.emojiCategoryObjects' | 'tools.callout.emojiCategoryPeople' | 'tools.callout.emojiCategorySymbols' | 'tools.callout.emojiCategoryTravel' | 'tools.callout.emojiSearchHint' | 'tools.callout.emojiSearchResults' | 'tools.callout.filterEmojis' | 'tools.callout.noEmojisFound' | 'tools.callout.pickRandom' | 'tools.callout.placeholder' | 'tools.callout.removeEmoji' | 'tools.callout.skinTone' | 'tools.code.autoDetected' | 'tools.code.codeTab' | 'tools.code.copied' | 'tools.code.copyCode' | 'tools.code.language' | 'tools.code.lineNumbers' | 'tools.code.placeholder' | 'tools.code.plainText' | 'tools.code.previewTab' | 'tools.code.searchLanguage' | 'tools.code.sideBySide' | 'tools.code.wrapLines' | 'tools.colorPicker.color.blue' | 'tools.colorPicker.color.brown' | 'tools.colorPicker.color.gray' | 'tools.colorPicker.color.green' | 'tools.colorPicker.color.orange' | 'tools.colorPicker.color.pink' | 'tools.colorPicker.color.purple' | 'tools.colorPicker.color.red' | 'tools.colorPicker.color.yellow' | 'tools.colorPicker.colorSwatchLabel' | 'tools.colorPicker.defaultSwatchLabel' | 'tools.colorPicker.recentlyUsed' | 'tools.columns.col2' | 'tools.columns.col3' | 'tools.columns.col4' | 'tools.columns.col5' | 'tools.columns.resizeAriaLabel' | 'tools.columns.turnInto' | 'tools.database.addCard' | 'tools.database.addColumn' | 'tools.database.addRow' | 'tools.database.addView' | 'tools.database.cardDetails' | 'tools.database.cardMenuLabel' | 'tools.database.cardTitle' | 'tools.database.cardTitlePlaceholder' | 'tools.database.checkboxChecked' | 'tools.database.checkboxUnchecked' | 'tools.database.close' | 'tools.database.columnTitlePlaceholder' | 'tools.database.defaultStatusDone' | 'tools.database.defaultStatusInProgress' | 'tools.database.defaultStatusNotStarted' | 'tools.database.defaultStatusProperty' | 'tools.database.defaultTitleProperty' | 'tools.database.defaultViewBoard' | 'tools.database.deleteCard' | 'tools.database.deleteColumn' | 'tools.database.deleteRow' | 'tools.database.deleteView' | 'tools.database.duplicateView' | 'tools.database.editCardTitle' | 'tools.database.emptyColumn' | 'tools.database.kanbanBoard' | 'tools.database.listView' | 'tools.database.moreViews' | 'tools.database.newPage' | 'tools.database.newRow' | 'tools.database.openRow' | 'tools.database.propertyTypeCheckbox' | 'tools.database.propertyTypeDate' | 'tools.database.propertyTypeHeading' | 'tools.database.propertyTypeMultiSelect' | 'tools.database.propertyTypeNumber' | 'tools.database.propertyTypeSelect' | 'tools.database.propertyTypeText' | 'tools.database.propertyTypeUrl' | 'tools.database.renameColumn' | 'tools.database.renameView' | 'tools.database.rowTitlePlaceholder' | 'tools.database.titlePlaceholder' | 'tools.database.viewTypeBoard' | 'tools.database.viewTypeBoardDescription' | 'tools.database.viewTypeList' | 'tools.database.viewTypeListDescription' | 'tools.embed.captionPlaceholder' | 'tools.embed.empty' | 'tools.embed.invalidUrl' | 'tools.embed.openOriginal' | 'tools.embed.replace' | 'tools.embed.urlPlaceholder' | 'tools.embed.urlSubmit' | 'tools.equation.placeholder' | 'tools.file.cancelUpload' | 'tools.file.captionPlaceholder' | 'tools.file.copyUrl' | 'tools.file.download' | 'tools.file.emptyAddFile' | 'tools.file.emptyChooseFile' | 'tools.file.emptyDropHint' | 'tools.file.emptyDropToUpload' | 'tools.file.emptyInsert' | 'tools.file.emptyLink' | 'tools.file.emptySourceAria' | 'tools.file.emptyUpload' | 'tools.file.emptyUrlAria' | 'tools.file.emptyUrlPlaceholder' | 'tools.file.errorFileTooLarge' | 'tools.file.errorReplace' | 'tools.file.errorUploadFailed' | 'tools.file.preview' | 'tools.file.previewBackToContent' | 'tools.file.previewClose' | 'tools.file.previewDownload' | 'tools.file.previewError' | 'tools.file.previewLoading' | 'tools.file.previewOpenInNewTab' | 'tools.file.previewRaw' | 'tools.file.previewRender' | 'tools.file.replace' | 'tools.file.toggleCaption' | 'tools.file.uploadProgress' | 'tools.file.uploading' | 'tools.header.heading1' | 'tools.header.heading2' | 'tools.header.heading3' | 'tools.header.heading4' | 'tools.header.heading5' | 'tools.header.heading6' | 'tools.header.toggleHeading' | 'tools.header.toggleHeading1' | 'tools.header.toggleHeading2' | 'tools.header.toggleHeading3' | 'tools.header.toggleHeading4' | 'tools.header.toggleHeading5' | 'tools.header.toggleHeading6' | 'tools.image.alignment' | 'tools.image.alignmentCenter' | 'tools.image.alignmentCenterAria' | 'tools.image.alignmentLeft' | 'tools.image.alignmentLeftAria' | 'tools.image.alignmentRight' | 'tools.image.alignmentRightAria' | 'tools.image.altButton' | 'tools.image.altDescription' | 'tools.image.altEdit' | 'tools.image.altPlaceholder' | 'tools.image.cancelUpload' | 'tools.image.caption' | 'tools.image.captionPlaceholder' | 'tools.image.converting' | 'tools.image.copyUrl' | 'tools.image.crop' | 'tools.image.cropAspectRatio' | 'tools.image.cropCancel' | 'tools.image.cropDialogLabel' | 'tools.image.cropDone' | 'tools.image.cropRatio16to9' | 'tools.image.cropRatio1to1' | 'tools.image.cropRatio4to3' | 'tools.image.cropRatioCircle' | 'tools.image.cropRatioFree' | 'tools.image.cropRatioOval' | 'tools.image.cropReset' | 'tools.image.download' | 'tools.image.downloadOriginal' | 'tools.image.emptyAddImage' | 'tools.image.emptyChooseFile' | 'tools.image.emptyDropToUpload' | 'tools.image.emptyInsert' | 'tools.image.emptyLink' | 'tools.image.emptyMaxSize' | 'tools.image.emptyOrDropHere' | 'tools.image.emptySourceAria' | 'tools.image.emptyUpload' | 'tools.image.emptyUrlAria' | 'tools.image.emptyUrlPlaceholder' | 'tools.image.errorDefaultMessage' | 'tools.image.errorDefaultTitle' | 'tools.image.errorFileTooLarge' | 'tools.image.errorImageFailedToLoad' | 'tools.image.errorReplace' | 'tools.image.errorRetry' | 'tools.image.errorSourceOffline' | 'tools.image.errorUnavailable' | 'tools.image.errorUploadFailed' | 'tools.image.errorUploadFailedTitle' | 'tools.image.exitFullscreen' | 'tools.image.moreOptions' | 'tools.image.navigationControls' | 'tools.image.nextImage' | 'tools.image.preview' | 'tools.image.previewControls' | 'tools.image.previousImage' | 'tools.image.replace' | 'tools.image.resetZoom' | 'tools.image.size' | 'tools.image.sizeFull' | 'tools.image.sizeLarge' | 'tools.image.sizeMedium' | 'tools.image.sizeSmall' | 'tools.image.toggleCaption' | 'tools.image.uploadProgress' | 'tools.image.uploading' | 'tools.image.uploadingLabel' | 'tools.image.viewFullscreen' | 'tools.image.zoomIn' | 'tools.image.zoomOut' | 'tools.link.addLink' | 'tools.link.copyFailed' | 'tools.link.copyUrl' | 'tools.link.edit' | 'tools.link.emailAddress' | 'tools.link.invalidLink' | 'tools.link.jumpToSection' | 'tools.link.keepTyping' | 'tools.link.linkText' | 'tools.link.linkTitle' | 'tools.link.pageOrUrl' | 'tools.link.removeLink' | 'tools.link.urlCopied' | 'tools.link.webLink' | 'tools.linkPaste.bookmark' | 'tools.linkPaste.embed' | 'tools.linkPaste.embedAudio' | 'tools.linkPaste.embedCalendar' | 'tools.linkPaste.embedChart' | 'tools.linkPaste.embedCode' | 'tools.linkPaste.embedDesign' | 'tools.linkPaste.embedDocument' | 'tools.linkPaste.embedForm' | 'tools.linkPaste.embedImage' | 'tools.linkPaste.embedMap' | 'tools.linkPaste.embedSocial' | 'tools.linkPaste.embedTable' | 'tools.linkPaste.embedVideo' | 'tools.linkPaste.mention' | 'tools.linkPaste.plain' | 'tools.list.placeholder' | 'tools.marker.background' | 'tools.marker.default' | 'tools.marker.textColor' | 'tools.paragraph.placeholder' | 'tools.quote.defaultSize' | 'tools.quote.largeSize' | 'tools.quote.placeholder' | 'tools.quote.size' | 'tools.spacer.resizeAriaLabel' | 'tools.stub.blockCannotBeDisplayed' | 'tools.stub.error' | 'tools.supSub.subscript' | 'tools.supSub.superscript' | 'tools.table.cellColor' | 'tools.table.clearSelection' | 'tools.table.clickToAddColumn' | 'tools.table.clickToAddRow' | 'tools.table.comfortableText' | 'tools.table.compactText' | 'tools.table.copySelection' | 'tools.table.deleteColumn' | 'tools.table.deleteRow' | 'tools.table.dragToAddRemoveColumns' | 'tools.table.dragToAddRemoveRows' | 'tools.table.dragToAddRemoveRowsColumns' | 'tools.table.duplicateColumn' | 'tools.table.duplicateRow' | 'tools.table.fitToPageWidth' | 'tools.table.fullWidth' | 'tools.table.headerColumn' | 'tools.table.headerRow' | 'tools.table.insertColumnLeft' | 'tools.table.insertColumnRight' | 'tools.table.insertRowAbove' | 'tools.table.insertRowBelow' | 'tools.table.mergeCells' | 'tools.table.placement' | 'tools.table.placementBottomCenter' | 'tools.table.placementBottomLeft' | 'tools.table.placementBottomRight' | 'tools.table.placementMiddleCenter' | 'tools.table.placementMiddleLeft' | 'tools.table.placementMiddleRight' | 'tools.table.placementTopCenter' | 'tools.table.placementTopLeft' | 'tools.table.placementTopRight' | 'tools.table.splitCell' | 'tools.table.textSize' | 'tools.table.title' | 'tools.toggle.ariaLabelCollapse' | 'tools.toggle.ariaLabelExpand' | 'tools.toggle.bodyPlaceholder' | 'tools.toggle.placeholder' | 'tools.video.alignment' | 'tools.video.alignmentCenter' | 'tools.video.alignmentLeft' | 'tools.video.alignmentRight' | 'tools.video.autoplay' | 'tools.video.back' | 'tools.video.caption' | 'tools.video.captionPlaceholder' | 'tools.video.copyUrl' | 'tools.video.ctxCopyUrl' | 'tools.video.ctxCopyUrlAtTime' | 'tools.video.ctxStats' | 'tools.video.download' | 'tools.video.emptyAddVideo' | 'tools.video.emptyChooseFile' | 'tools.video.emptyDropToUpload' | 'tools.video.emptyInsert' | 'tools.video.emptyLink' | 'tools.video.emptyMaxSize' | 'tools.video.emptyOrDropHere' | 'tools.video.emptySourceAria' | 'tools.video.emptyUpload' | 'tools.video.emptyUrlAria' | 'tools.video.emptyUrlPlaceholder' | 'tools.video.errorFileTooLarge' | 'tools.video.errorNotMediaUrl' | 'tools.video.errorReplace' | 'tools.video.errorUnplayable' | 'tools.video.errorUploadFailed' | 'tools.video.fullscreen' | 'tools.video.fullscreenExit' | 'tools.video.hideControls' | 'tools.video.loop' | 'tools.video.moreOptions' | 'tools.video.mute' | 'tools.video.off' | 'tools.video.on' | 'tools.video.pause' | 'tools.video.pip' | 'tools.video.play' | 'tools.video.playbackSpeed' | 'tools.video.replace' | 'tools.video.seek' | 'tools.video.seekValueText' | 'tools.video.settings' | 'tools.video.speedDecrease' | 'tools.video.speedIncrease' | 'tools.video.speedPresets' | 'tools.video.statsBufferHealth' | 'tools.video.statsDroppedFrames' | 'tools.video.statsResolution' | 'tools.video.statsUnavailable' | 'tools.video.statsViewport' | 'tools.video.theater' | 'tools.video.theaterExit' | 'tools.video.toggleCaption' | 'tools.video.toggleTimeDisplay' | 'tools.video.unmute' | 'tools.video.uploading' | 'tools.video.volume'; /** * Host message overrides typed against the built-in key contract. * * Use it with `satisfies` to opt into rename-safety for the built-in strings * you override, while still spreading in any custom-tool keys separately: * * ```ts * const overrides = { * 'toolNames.text': 'Текст', * 'tools.link.addLink': 'Добавить ссылку', * } satisfies BlokMessages; * ``` */ export type BlokMessages = Partial>;