import type { CjkBookTitleMark, CjkBracketPair, CjkConfig, CjkEmphasis, CjkHangingPunctuation, CjkLatinSpacingEdge, CjkLineBreak, CjkParagraphStartBracket, CjkPunctuationWidth, CjkRegion, CjkRubyAlign, CjkRubyOverhang, PostextConfig, ResolvedCjkConfig, ResolvedCjkEmphasisMarkConfig } from '../types.js'; /** `cjk` as written when nothing is set: everything follows the locale * (marks hang in Japan only), lines break between characters (no * `keep-all`) but leave two characters of a book title on either side, * circled numbers and design text set as CJK (#637), a quarter em between Han and Latin, no grid; readings, warichu notes and kanbun marks at half the text size * (the 返り点 after their character, JIS X 4051 §5.5), warichu brackets * by region (none but in Japan, `defaultCjkWarichuBrackets`), marks in * the text colour (`annotationColor` unset). */ export declare const DEFAULT_CJK_CONFIG: Required> & Pick; /** What `*…*` does to Chinese characters by default: emphasis dots when the * document language is Chinese or Japanese, italics otherwise. Japanese * has no italics: emphasis is 傍点 (JLReq §3.3.9), set as the region's * mark (`defaultCjkEmphasisMark`). */ export declare function defaultCjkEmphasis(locale: string | undefined): CjkEmphasis; /** What `:book[…]` prints by default: brackets on the mainland (《》) and * in Japan (『』, `defaultCjkBookTitleBrackets`), the wavy line in Taiwan * and Hong Kong. */ export declare function defaultCjkBookTitleMark(region: CjkRegion): CjkBookTitleMark; /** The brackets a book title is set between by default, outermost first: * 『』 then 「」 in Japan (an article or a chapter named inside a book's * title takes 「」), 《》 then 〈〉 for Chinese (GB/T 15834—2011). */ export declare function defaultCjkBookTitleBrackets(region: CjkRegion): CjkBracketPair[]; /** The emphasis mark a region sets when `cjk.emphasisMark` says nothing: * in Japan the filled sesame ﹅ over the text, which is right of vertical * text (JLReq §3.3.9; the Aozora 傍点 is the sesame in either direction); * for Chinese the filled dot, with the side the writing mode gives (under * horizontal text, right of vertical text). */ export declare function defaultCjkEmphasisMark(region: CjkRegion): ResolvedCjkEmphasisMarkConfig; /** The brackets a warichu note is set between by default: ( ) in Japan * (JLReq §3.4.2: 割注 is normally bracketed), none elsewhere (Chinese * 双行夹注 is set bare). */ export declare function defaultCjkWarichuBrackets(region: CjkRegion): { open: string; close: string; }; /** What a reading longer than its base may run onto by default (#422): * in Japan up to one ruby character onto kana and the blanks of marks, * never onto kanji (`kana`, JLReq §3.3.8); undefined elsewhere, where a * quarter of the ruby em passes onto any neighbour without a reading * (clreq, as before). */ export declare function defaultCjkRubyOverhang(region: CjkRegion): CjkRubyOverhang | undefined; /** Where a reading sits on its base by default (#422): JIS X 4051's 1:2:1 * in Japan (`jis`); undefined elsewhere (centred, as before). */ export declare function defaultCjkRubyAlign(region: CjkRegion): CjkRubyAlign | undefined; /** The line-break level a region's text is set with by default: GB/T * 15834's for the mainland, clreq's basic set for Taiwan and Hong Kong, * JIS X 4051's for Japan (`ja-very-strict`: small kana, ー, the iteration * marks and the hyphens stay off the line start; JLReq Appendix C.3). */ export declare function defaultCjkLineBreak(region: CjkRegion): CjkLineBreak; /** The punctuation width style a region's text is set with by default: * Kaiming (开明式) on the mainland, where most books use it; full width * in Taiwan and Hong Kong, whose marks sit in the middle of their box, * and in Japan, where 、。 keep their whole em inside the line (JLReq * §3.1.2: half a glyph and half an em of blank). */ export declare function defaultCjkPunctuationWidth(region: CjkRegion): CjkPunctuationWidth; /** Whether marks hang by default: in Japan, where many books hang 、。 * past the line end when they would otherwise open the next line * (ぶら下げ, JLReq §2.5.1, bunko in particular; `'allow'`, which sets the * mark inside the line when the line can take it in); never in the * Chinese regions. */ export declare function defaultCjkHangingPunctuation(region: CjkRegion): CjkHangingPunctuation; /** Which side of a Western word takes the Han–Latin space by default * (#721): any side of a word that holds a letter or a digit in Japan * (JLReq §3.2.6), a side that ends in a letter or a digit in the Chinese * regions (clreq §6.3.3). */ export declare function defaultCjkLatinSpacingEdge(region: CjkRegion): CjkLatinSpacingEdge; /** The region a configuration's `cjk` settings resolve to: `cjk.region` * when it names one, else the region of the document language as * `resolveAllConfig` reads it (`locale`, else the hyphenation locale), * `'mainland'` for a language with none. */ export declare function cjkRegionOfConfig(config: PostextConfig | undefined): CjkRegion; /** Whether ?! take a full-width space after them by default: in Japan * (JLReq §3.1.6), not in the Chinese regions. */ export declare function defaultCjkSpaceAfterQuestion(region: CjkRegion): boolean; /** How an opening bracket that starts a paragraph is set by default: * pattern ③ (`'half'`) in Japan, the convention of literary books * (Kodansha, Shinchōsha, Bungei Shunjū, Chikuma: JLReq §3.1.5); * undefined in the Chinese regions, which set it as at any line start * (`trimLineStart`). */ export declare function defaultCjkParagraphStartBracket(region: CjkRegion): CjkParagraphStartBracket | undefined; /** Whether a region compresses adjacent marks and trims brackets at line * edges by default: the mainland, Hong Kong and Japan do (JLReq §3.1.4, * §3.1.5: 天付き), many Taiwan books set every mark a full em (clreq * §6.3.2). */ export declare function defaultCjkCompression(region: CjkRegion): boolean; /** `cjk` resolved: `'auto'` (or a value the engine does not know) follows * `locale`, the document language, read by `cjkRegionOf`. The grid's * numbers are the ones written (0 when unset); the build's pre-pass * (`applyCjkGrid`) replaces them with the ones in use. */ export declare function resolveCjkConfig(partial: CjkConfig | undefined, locale: string | undefined): ResolvedCjkConfig; /** `cjk` without the fields at their default (`'auto'`, a quarter em, * half-size readings and notes); undefined when nothing is left. */ export declare function stripCjkDefaults(cjk?: CjkConfig): CjkConfig | undefined; //# sourceMappingURL=cjk.d.ts.map