@girs/harfbuzz-0.0 7.1.0-3.2.2 → 8.2.1-3.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  ![downloads/week](https://img.shields.io/npm/dw/@girs/harfbuzz-0.0)
6
6
 
7
7
 
8
- GJS TypeScript type definitions for HarfBuzz-0.0, generated from library version 7.1.0 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v3.2.2.
8
+ GJS TypeScript type definitions for HarfBuzz-0.0, generated from library version 8.2.1 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v3.2.4.
9
9
 
10
10
 
11
11
  ## Install
@@ -2973,9 +2973,9 @@ export enum unicode_combining_class_t {
2973
2973
  */
2974
2974
  CCC130,
2975
2975
  /**
2976
- * [Tibetan]
2976
+ * [Tibetan] Since: 7.2.0
2977
2977
  */
2978
- CCC133,
2978
+ CCC132,
2979
2979
  /**
2980
2980
  * Marks attached at the bottom left
2981
2981
  */
@@ -3369,7 +3369,7 @@ export enum glyph_flags_t {
3369
3369
  * layout, by avoiding re-shaping of each line
3370
3370
  * after line-breaking, by limiting the
3371
3371
  * reshaping to a small piece around the
3372
- * breaking positin only, even if the breaking
3372
+ * breaking position only, even if the breaking
3373
3373
  * position carries the
3374
3374
  * #HB_GLYPH_FLAG_UNSAFE_TO_BREAK or when
3375
3375
  * hyphenation or other text transformation
@@ -3483,6 +3483,10 @@ export const AAT_LAYOUT_NO_SELECTOR_INDEX: number
3483
3483
  * Set to U+FFFD REPLACEMENT CHARACTER.
3484
3484
  */
3485
3485
  export const BUFFER_REPLACEMENT_CODEPOINT_DEFAULT: number
3486
+ /**
3487
+ * Unused #hb_codepoint_t value.
3488
+ */
3489
+ export const CODEPOINT_INVALID: codepoint_t
3486
3490
  /**
3487
3491
  * Special setting for #hb_feature_t.start to apply the feature from the start
3488
3492
  * of the buffer.
@@ -3498,10 +3502,6 @@ export const FONT_NO_VAR_NAMED_INSTANCE: number
3498
3502
  * An unset #hb_language_t.
3499
3503
  */
3500
3504
  export const LANGUAGE_INVALID: language_t
3501
- /**
3502
- * Unset #hb_map_t value.
3503
- */
3504
- export const MAP_VALUE_INVALID: codepoint_t
3505
3505
  /**
3506
3506
  * Special value for language index indicating default or unsupported language.
3507
3507
  */
@@ -3531,9 +3531,9 @@ export const OT_MAX_TAGS_PER_SCRIPT: number
3531
3531
  */
3532
3532
  export const OT_VAR_NO_AXIS_INDEX: number
3533
3533
  /**
3534
- * Unset #hb_set_t value.
3534
+ * [Tibetan]
3535
3535
  */
3536
- export const SET_VALUE_INVALID: codepoint_t
3536
+ export const UNICODE_COMBINING_CLASS_CCC133: number
3537
3537
  /**
3538
3538
  * Maximum valid Unicode code point.
3539
3539
  */
@@ -3819,7 +3819,7 @@ export function buffer_deserialize_unicode(buffer: buffer_t, buf: string[], form
3819
3819
  * callers if just comparing two buffers is needed.
3820
3820
  * @param buffer a buffer.
3821
3821
  * @param reference other buffer to compare to.
3822
- * @param dottedcircle_glyph glyph id of U+25CC DOTTED CIRCLE, or (hb_codepont_t) -1.
3822
+ * @param dottedcircle_glyph glyph id of U+25CC DOTTED CIRCLE, or (hb_codepoint_t) -1.
3823
3823
  * @param position_fuzz allowed absolute difference in position values.
3824
3824
  */
3825
3825
  export function buffer_diff(buffer: buffer_t, reference: buffer_t, dottedcircle_glyph: codepoint_t, position_fuzz: number): buffer_diff_flags_t
@@ -4223,7 +4223,7 @@ export function buffer_set_message_func(buffer: buffer_t, func: buffer_message_f
4223
4223
  * Sets the #hb_codepoint_t that replaces characters not found in
4224
4224
  * the font during shaping.
4225
4225
  *
4226
- * The not-found glyph defaults to zero, sometimes knows as the
4226
+ * The not-found glyph defaults to zero, sometimes known as the
4227
4227
  * ".notdef" glyph. This API allows for differentiating the two.
4228
4228
  * @param buffer An #hb_buffer_t
4229
4229
  * @param not_found the not-found #hb_codepoint_t
@@ -4484,7 +4484,7 @@ export function face_count(blob: blob_t): number
4484
4484
  * a face index into that blob.
4485
4485
  *
4486
4486
  * The face index is used for blobs of file formats such as TTC and
4487
- * and DFont that can contain more than one face. Face indices within
4487
+ * DFont that can contain more than one face. Face indices within
4488
4488
  * such collections are zero-based.
4489
4489
  *
4490
4490
  * <note>Note: If the blob font format is not a collection, `index`
@@ -4722,8 +4722,7 @@ export function font_funcs_is_immutable(ffuncs: font_funcs_t): bool_t
4722
4722
  */
4723
4723
  export function font_funcs_make_immutable(ffuncs: font_funcs_t): void
4724
4724
  /**
4725
- * Sets the implementation function for #hb_font_draw_glyph_func_t,
4726
- * which is the same as #hb_font_get_glyph_shape_func_t.
4725
+ * Sets the implementation function for #hb_font_draw_glyph_func_t.
4727
4726
  * @param ffuncs A font-function structure
4728
4727
  * @param func The callback function to assign
4729
4728
  */
@@ -5098,7 +5097,7 @@ export function font_get_h_extents(font: font_t): [ /* returnType */ bool_t, /*
5098
5097
  export function font_get_nominal_glyph(font: font_t, unicode: codepoint_t): [ /* returnType */ bool_t, /* glyph */ codepoint_t ]
5099
5098
  /**
5100
5099
  * Fetches the nominal glyph IDs for a sequence of Unicode code points. Glyph
5101
- * IDs must be returned in a #hb_codepoint_t output parameter. Stopes at the
5100
+ * IDs must be returned in a #hb_codepoint_t output parameter. Stops at the
5102
5101
  * first unsupported glyph ID.
5103
5102
  * @param font #hb_font_t to work upon
5104
5103
  * @param count number of code points to query
@@ -5741,7 +5740,7 @@ export function map_is_equal(map: map_t, other: map_t): bool_t
5741
5740
  */
5742
5741
  export function map_keys(map: map_t, keys: set_t): void
5743
5742
  /**
5744
- * Fetches the next key/value paire in `map`.
5743
+ * Fetches the next key/value pair in `map`.
5745
5744
  *
5746
5745
  * Set `idx` to -1 to get started.
5747
5746
  *
@@ -5912,6 +5911,15 @@ export function ot_font_set_funcs(font: font_t): void
5912
5911
  * @param features The array of features to collect, terminated by %HB_TAG_NONE
5913
5912
  */
5914
5913
  export function ot_layout_collect_features(face: face_t, table_tag: tag_t, scripts: tag_t[] | null, languages: tag_t[] | null, features: tag_t[] | null): /* feature_indexes */ set_t
5914
+ /**
5915
+ * Fetches the mapping from feature tags to feature indexes for
5916
+ * the specified script and language.
5917
+ * @param face #hb_face_t to work upon
5918
+ * @param table_tag #HB_OT_TAG_GSUB or #HB_OT_TAG_GPOS
5919
+ * @param script_index The index of the requested script tag
5920
+ * @param language_index The index of the requested language tag
5921
+ */
5922
+ export function ot_layout_collect_features_map(face: face_t, table_tag: tag_t, script_index: number, language_index: number): /* feature_map */ map_t
5915
5923
  /**
5916
5924
  * Fetches a list of all feature-lookup indexes in the specified face's GSUB
5917
5925
  * table or GPOS table, underneath the specified scripts, languages, and
@@ -5988,6 +5996,19 @@ export function ot_layout_get_attach_points(face: face_t, glyph: codepoint_t, st
5988
5996
  * @returns `true` if found baseline value in the font.
5989
5997
  */
5990
5998
  export function ot_layout_get_baseline(font: font_t, baseline_tag: ot_layout_baseline_tag_t, direction: direction_t, script_tag: tag_t, language_tag: tag_t): [ /* returnType */ bool_t, /* coord */ position_t | null ]
5999
+ /**
6000
+ * Fetches a baseline value from the face.
6001
+ *
6002
+ * This function is like hb_ot_layout_get_baseline() but takes
6003
+ * #hb_script_t and #hb_language_t instead of OpenType #hb_tag_t.
6004
+ * @param font a font
6005
+ * @param baseline_tag a baseline tag
6006
+ * @param direction text direction.
6007
+ * @param script script.
6008
+ * @param language language, currently unused.
6009
+ * @returns `true` if found baseline value in the font.
6010
+ */
6011
+ export function ot_layout_get_baseline2(font: font_t, baseline_tag: ot_layout_baseline_tag_t, direction: direction_t, script: script_t, language: language_t | null): [ /* returnType */ bool_t, /* coord */ position_t | null ]
5991
6012
  /**
5992
6013
  * Fetches a baseline value from the face, and synthesizes
5993
6014
  * it if the font does not have it.
@@ -5998,6 +6019,54 @@ export function ot_layout_get_baseline(font: font_t, baseline_tag: ot_layout_bas
5998
6019
  * @param language_tag language tag, currently unused.
5999
6020
  */
6000
6021
  export function ot_layout_get_baseline_with_fallback(font: font_t, baseline_tag: ot_layout_baseline_tag_t, direction: direction_t, script_tag: tag_t, language_tag: tag_t): /* coord */ position_t
6022
+ /**
6023
+ * Fetches a baseline value from the face, and synthesizes
6024
+ * it if the font does not have it.
6025
+ *
6026
+ * This function is like hb_ot_layout_get_baseline_with_fallback() but takes
6027
+ * #hb_script_t and #hb_language_t instead of OpenType #hb_tag_t.
6028
+ * @param font a font
6029
+ * @param baseline_tag a baseline tag
6030
+ * @param direction text direction.
6031
+ * @param script script.
6032
+ * @param language language, currently unused.
6033
+ */
6034
+ export function ot_layout_get_baseline_with_fallback2(font: font_t, baseline_tag: ot_layout_baseline_tag_t, direction: direction_t, script: script_t, language: language_t | null): /* coord */ position_t
6035
+ /**
6036
+ * Fetches script/language-specific font extents. These values are
6037
+ * looked up in the `BASE` table's `MinMax` records.
6038
+ *
6039
+ * If no such extents are found, the default extents for the font are
6040
+ * fetched. As such, the return value of this function can for the
6041
+ * most part be ignored. Note that the per-script/language extents
6042
+ * do not have a line-gap value, and the line-gap is set to zero in
6043
+ * that case.
6044
+ * @param font a font
6045
+ * @param direction text direction.
6046
+ * @param script_tag script tag.
6047
+ * @param language_tag language tag.
6048
+ * @returns `true` if found script/language-specific font extents.
6049
+ */
6050
+ export function ot_layout_get_font_extents(font: font_t, direction: direction_t, script_tag: tag_t, language_tag: tag_t): [ /* returnType */ bool_t, /* extents */ font_extents_t | null ]
6051
+ /**
6052
+ * Fetches script/language-specific font extents. These values are
6053
+ * looked up in the `BASE` table's `MinMax` records.
6054
+ *
6055
+ * If no such extents are found, the default extents for the font are
6056
+ * fetched. As such, the return value of this function can for the
6057
+ * most part be ignored. Note that the per-script/language extents
6058
+ * do not have a line-gap value, and the line-gap is set to zero in
6059
+ * that case.
6060
+ *
6061
+ * This function is like hb_ot_layout_get_font_extents() but takes
6062
+ * #hb_script_t and #hb_language_t instead of OpenType #hb_tag_t.
6063
+ * @param font a font
6064
+ * @param direction text direction.
6065
+ * @param script script.
6066
+ * @param language language.
6067
+ * @returns `true` if found script/language-specific font extents.
6068
+ */
6069
+ export function ot_layout_get_font_extents2(font: font_t, direction: direction_t, script: script_t, language: language_t | null): [ /* returnType */ bool_t, /* extents */ font_extents_t | null ]
6001
6070
  /**
6002
6071
  * Fetches the GDEF class of the requested glyph in the specified face.
6003
6072
  * @param face The #hb_face_t to work on
@@ -6298,7 +6367,7 @@ export function ot_layout_table_select_script(face: face_t, table_tag: tag_t, sc
6298
6367
  *
6299
6368
  * However, if the requested constant is #HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN,
6300
6369
  * #HB_OT_MATH_CONSTANT_SCRIPT_SCRIPT_PERCENT_SCALE_DOWN or
6301
- * #HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN, then the return value is
6370
+ * #HB_OT_MATH_CONSTANT_RADICAL_DEGREE_BOTTOM_RAISE_PERCENT, then the return value is
6302
6371
  * an integer between 0 and 100 representing that percentage.
6303
6372
  * @param font #hb_font_t to work upon
6304
6373
  * @param constant #hb_ot_math_constant_t the constant to retrieve
@@ -6562,7 +6631,7 @@ export function ot_tags_from_script(script: script_t): [ /* script_tag_1 */ tag_
6562
6631
  * @param script_count maximum number of script tags to retrieve (IN) and actual number of script tags retrieved (OUT)
6563
6632
  * @param language_count maximum number of language tags to retrieve (IN) and actual number of language tags retrieved (OUT)
6564
6633
  */
6565
- export function ot_tags_from_script_and_language(script: script_t, language: language_t, script_count?: number, language_count?: number): [ /* script_count */ number, /* script_tags */ tag_t, /* language_count */ number, /* language_tags */ tag_t ]
6634
+ export function ot_tags_from_script_and_language(script: script_t, language: language_t | null, script_count?: number, language_count?: number): [ /* script_count */ number, /* script_tags */ tag_t, /* language_count */ number, /* language_tags */ tag_t ]
6566
6635
  /**
6567
6636
  * Converts a script tag and a language tag to an #hb_script_t and an
6568
6637
  * #hb_language_t.
@@ -6673,6 +6742,14 @@ export function ot_var_normalize_variations(face: face_t, variations: variation_
6673
6742
  * @param color The color to use
6674
6743
  */
6675
6744
  export function paint_color(funcs: paint_funcs_t, paint_data: any | null, is_foreground: bool_t, color: color_t): void
6745
+ /**
6746
+ * Perform a "color-glyph" paint operation.
6747
+ * @param funcs paint functions
6748
+ * @param paint_data associated data passed by the caller
6749
+ * @param glyph the glyph ID
6750
+ * @param font the font
6751
+ */
6752
+ export function paint_color_glyph(funcs: paint_funcs_t, paint_data: any | null, glyph: codepoint_t, font: font_t): bool_t
6676
6753
  /**
6677
6754
  * Gets the custom palette color for `color_index`.
6678
6755
  * @param funcs paint functions
@@ -6716,6 +6793,12 @@ export function paint_funcs_make_immutable(funcs: paint_funcs_t): void
6716
6793
  * @param func The paint-color callback
6717
6794
  */
6718
6795
  export function paint_funcs_set_color_func(funcs: paint_funcs_t, func: paint_color_func_t): void
6796
+ /**
6797
+ * Sets the color-glyph callback on the paint functions struct.
6798
+ * @param funcs A paint functions struct
6799
+ * @param func The color-glyph callback
6800
+ */
6801
+ export function paint_funcs_set_color_glyph_func(funcs: paint_funcs_t, func: paint_color_glyph_func_t): void
6719
6802
  /**
6720
6803
  * Sets the custom-palette-color callback on the paint functions struct.
6721
6804
  * @param funcs A paint functions struct
@@ -7837,6 +7920,18 @@ export interface font_paint_glyph_func_t {
7837
7920
  export interface paint_color_func_t {
7838
7921
  (funcs: paint_funcs_t, paint_data: any | null, is_foreground: bool_t, color: color_t): void
7839
7922
  }
7923
+ /**
7924
+ * A virtual method for the #hb_paint_funcs_t to render a color glyph by glyph index.
7925
+ * @callback
7926
+ * @param funcs paint functions object
7927
+ * @param paint_data The data accompanying the paint functions in hb_font_paint_glyph()
7928
+ * @param glyph the glyph ID
7929
+ * @param font the font
7930
+ * @returns %true if the glyph was painted, %false otherwise.
7931
+ */
7932
+ export interface paint_color_glyph_func_t {
7933
+ (funcs: paint_funcs_t, paint_data: any | null, glyph: codepoint_t, font: font_t): bool_t
7934
+ }
7840
7935
  /**
7841
7936
  * A virtual method for the #hb_paint_funcs_t to fetch a color from the custom
7842
7937
  * color palette.
package/harfbuzz-0.0.d.ts CHANGED
@@ -2975,9 +2975,9 @@ enum unicode_combining_class_t {
2975
2975
  */
2976
2976
  CCC130,
2977
2977
  /**
2978
- * [Tibetan]
2978
+ * [Tibetan] Since: 7.2.0
2979
2979
  */
2980
- CCC133,
2980
+ CCC132,
2981
2981
  /**
2982
2982
  * Marks attached at the bottom left
2983
2983
  */
@@ -3371,7 +3371,7 @@ enum glyph_flags_t {
3371
3371
  * layout, by avoiding re-shaping of each line
3372
3372
  * after line-breaking, by limiting the
3373
3373
  * reshaping to a small piece around the
3374
- * breaking positin only, even if the breaking
3374
+ * breaking position only, even if the breaking
3375
3375
  * position carries the
3376
3376
  * #HB_GLYPH_FLAG_UNSAFE_TO_BREAK or when
3377
3377
  * hyphenation or other text transformation
@@ -3485,6 +3485,10 @@ const AAT_LAYOUT_NO_SELECTOR_INDEX: number
3485
3485
  * Set to U+FFFD REPLACEMENT CHARACTER.
3486
3486
  */
3487
3487
  const BUFFER_REPLACEMENT_CODEPOINT_DEFAULT: number
3488
+ /**
3489
+ * Unused #hb_codepoint_t value.
3490
+ */
3491
+ const CODEPOINT_INVALID: codepoint_t
3488
3492
  /**
3489
3493
  * Special setting for #hb_feature_t.start to apply the feature from the start
3490
3494
  * of the buffer.
@@ -3500,10 +3504,6 @@ const FONT_NO_VAR_NAMED_INSTANCE: number
3500
3504
  * An unset #hb_language_t.
3501
3505
  */
3502
3506
  const LANGUAGE_INVALID: language_t
3503
- /**
3504
- * Unset #hb_map_t value.
3505
- */
3506
- const MAP_VALUE_INVALID: codepoint_t
3507
3507
  /**
3508
3508
  * Special value for language index indicating default or unsupported language.
3509
3509
  */
@@ -3533,9 +3533,9 @@ const OT_MAX_TAGS_PER_SCRIPT: number
3533
3533
  */
3534
3534
  const OT_VAR_NO_AXIS_INDEX: number
3535
3535
  /**
3536
- * Unset #hb_set_t value.
3536
+ * [Tibetan]
3537
3537
  */
3538
- const SET_VALUE_INVALID: codepoint_t
3538
+ const UNICODE_COMBINING_CLASS_CCC133: number
3539
3539
  /**
3540
3540
  * Maximum valid Unicode code point.
3541
3541
  */
@@ -3821,7 +3821,7 @@ function buffer_deserialize_unicode(buffer: buffer_t, buf: string[], format: buf
3821
3821
  * callers if just comparing two buffers is needed.
3822
3822
  * @param buffer a buffer.
3823
3823
  * @param reference other buffer to compare to.
3824
- * @param dottedcircle_glyph glyph id of U+25CC DOTTED CIRCLE, or (hb_codepont_t) -1.
3824
+ * @param dottedcircle_glyph glyph id of U+25CC DOTTED CIRCLE, or (hb_codepoint_t) -1.
3825
3825
  * @param position_fuzz allowed absolute difference in position values.
3826
3826
  */
3827
3827
  function buffer_diff(buffer: buffer_t, reference: buffer_t, dottedcircle_glyph: codepoint_t, position_fuzz: number): buffer_diff_flags_t
@@ -4225,7 +4225,7 @@ function buffer_set_message_func(buffer: buffer_t, func: buffer_message_func_t):
4225
4225
  * Sets the #hb_codepoint_t that replaces characters not found in
4226
4226
  * the font during shaping.
4227
4227
  *
4228
- * The not-found glyph defaults to zero, sometimes knows as the
4228
+ * The not-found glyph defaults to zero, sometimes known as the
4229
4229
  * ".notdef" glyph. This API allows for differentiating the two.
4230
4230
  * @param buffer An #hb_buffer_t
4231
4231
  * @param not_found the not-found #hb_codepoint_t
@@ -4486,7 +4486,7 @@ function face_count(blob: blob_t): number
4486
4486
  * a face index into that blob.
4487
4487
  *
4488
4488
  * The face index is used for blobs of file formats such as TTC and
4489
- * and DFont that can contain more than one face. Face indices within
4489
+ * DFont that can contain more than one face. Face indices within
4490
4490
  * such collections are zero-based.
4491
4491
  *
4492
4492
  * <note>Note: If the blob font format is not a collection, `index`
@@ -4724,8 +4724,7 @@ function font_funcs_is_immutable(ffuncs: font_funcs_t): bool_t
4724
4724
  */
4725
4725
  function font_funcs_make_immutable(ffuncs: font_funcs_t): void
4726
4726
  /**
4727
- * Sets the implementation function for #hb_font_draw_glyph_func_t,
4728
- * which is the same as #hb_font_get_glyph_shape_func_t.
4727
+ * Sets the implementation function for #hb_font_draw_glyph_func_t.
4729
4728
  * @param ffuncs A font-function structure
4730
4729
  * @param func The callback function to assign
4731
4730
  */
@@ -5100,7 +5099,7 @@ function font_get_h_extents(font: font_t): [ /* returnType */ bool_t, /* extents
5100
5099
  function font_get_nominal_glyph(font: font_t, unicode: codepoint_t): [ /* returnType */ bool_t, /* glyph */ codepoint_t ]
5101
5100
  /**
5102
5101
  * Fetches the nominal glyph IDs for a sequence of Unicode code points. Glyph
5103
- * IDs must be returned in a #hb_codepoint_t output parameter. Stopes at the
5102
+ * IDs must be returned in a #hb_codepoint_t output parameter. Stops at the
5104
5103
  * first unsupported glyph ID.
5105
5104
  * @param font #hb_font_t to work upon
5106
5105
  * @param count number of code points to query
@@ -5743,7 +5742,7 @@ function map_is_equal(map: map_t, other: map_t): bool_t
5743
5742
  */
5744
5743
  function map_keys(map: map_t, keys: set_t): void
5745
5744
  /**
5746
- * Fetches the next key/value paire in `map`.
5745
+ * Fetches the next key/value pair in `map`.
5747
5746
  *
5748
5747
  * Set `idx` to -1 to get started.
5749
5748
  *
@@ -5914,6 +5913,15 @@ function ot_font_set_funcs(font: font_t): void
5914
5913
  * @param features The array of features to collect, terminated by %HB_TAG_NONE
5915
5914
  */
5916
5915
  function ot_layout_collect_features(face: face_t, table_tag: tag_t, scripts: tag_t[] | null, languages: tag_t[] | null, features: tag_t[] | null): /* feature_indexes */ set_t
5916
+ /**
5917
+ * Fetches the mapping from feature tags to feature indexes for
5918
+ * the specified script and language.
5919
+ * @param face #hb_face_t to work upon
5920
+ * @param table_tag #HB_OT_TAG_GSUB or #HB_OT_TAG_GPOS
5921
+ * @param script_index The index of the requested script tag
5922
+ * @param language_index The index of the requested language tag
5923
+ */
5924
+ function ot_layout_collect_features_map(face: face_t, table_tag: tag_t, script_index: number, language_index: number): /* feature_map */ map_t
5917
5925
  /**
5918
5926
  * Fetches a list of all feature-lookup indexes in the specified face's GSUB
5919
5927
  * table or GPOS table, underneath the specified scripts, languages, and
@@ -5990,6 +5998,19 @@ function ot_layout_get_attach_points(face: face_t, glyph: codepoint_t, start_off
5990
5998
  * @returns `true` if found baseline value in the font.
5991
5999
  */
5992
6000
  function ot_layout_get_baseline(font: font_t, baseline_tag: ot_layout_baseline_tag_t, direction: direction_t, script_tag: tag_t, language_tag: tag_t): [ /* returnType */ bool_t, /* coord */ position_t | null ]
6001
+ /**
6002
+ * Fetches a baseline value from the face.
6003
+ *
6004
+ * This function is like hb_ot_layout_get_baseline() but takes
6005
+ * #hb_script_t and #hb_language_t instead of OpenType #hb_tag_t.
6006
+ * @param font a font
6007
+ * @param baseline_tag a baseline tag
6008
+ * @param direction text direction.
6009
+ * @param script script.
6010
+ * @param language language, currently unused.
6011
+ * @returns `true` if found baseline value in the font.
6012
+ */
6013
+ function ot_layout_get_baseline2(font: font_t, baseline_tag: ot_layout_baseline_tag_t, direction: direction_t, script: script_t, language: language_t | null): [ /* returnType */ bool_t, /* coord */ position_t | null ]
5993
6014
  /**
5994
6015
  * Fetches a baseline value from the face, and synthesizes
5995
6016
  * it if the font does not have it.
@@ -6000,6 +6021,54 @@ function ot_layout_get_baseline(font: font_t, baseline_tag: ot_layout_baseline_t
6000
6021
  * @param language_tag language tag, currently unused.
6001
6022
  */
6002
6023
  function ot_layout_get_baseline_with_fallback(font: font_t, baseline_tag: ot_layout_baseline_tag_t, direction: direction_t, script_tag: tag_t, language_tag: tag_t): /* coord */ position_t
6024
+ /**
6025
+ * Fetches a baseline value from the face, and synthesizes
6026
+ * it if the font does not have it.
6027
+ *
6028
+ * This function is like hb_ot_layout_get_baseline_with_fallback() but takes
6029
+ * #hb_script_t and #hb_language_t instead of OpenType #hb_tag_t.
6030
+ * @param font a font
6031
+ * @param baseline_tag a baseline tag
6032
+ * @param direction text direction.
6033
+ * @param script script.
6034
+ * @param language language, currently unused.
6035
+ */
6036
+ function ot_layout_get_baseline_with_fallback2(font: font_t, baseline_tag: ot_layout_baseline_tag_t, direction: direction_t, script: script_t, language: language_t | null): /* coord */ position_t
6037
+ /**
6038
+ * Fetches script/language-specific font extents. These values are
6039
+ * looked up in the `BASE` table's `MinMax` records.
6040
+ *
6041
+ * If no such extents are found, the default extents for the font are
6042
+ * fetched. As such, the return value of this function can for the
6043
+ * most part be ignored. Note that the per-script/language extents
6044
+ * do not have a line-gap value, and the line-gap is set to zero in
6045
+ * that case.
6046
+ * @param font a font
6047
+ * @param direction text direction.
6048
+ * @param script_tag script tag.
6049
+ * @param language_tag language tag.
6050
+ * @returns `true` if found script/language-specific font extents.
6051
+ */
6052
+ function ot_layout_get_font_extents(font: font_t, direction: direction_t, script_tag: tag_t, language_tag: tag_t): [ /* returnType */ bool_t, /* extents */ font_extents_t | null ]
6053
+ /**
6054
+ * Fetches script/language-specific font extents. These values are
6055
+ * looked up in the `BASE` table's `MinMax` records.
6056
+ *
6057
+ * If no such extents are found, the default extents for the font are
6058
+ * fetched. As such, the return value of this function can for the
6059
+ * most part be ignored. Note that the per-script/language extents
6060
+ * do not have a line-gap value, and the line-gap is set to zero in
6061
+ * that case.
6062
+ *
6063
+ * This function is like hb_ot_layout_get_font_extents() but takes
6064
+ * #hb_script_t and #hb_language_t instead of OpenType #hb_tag_t.
6065
+ * @param font a font
6066
+ * @param direction text direction.
6067
+ * @param script script.
6068
+ * @param language language.
6069
+ * @returns `true` if found script/language-specific font extents.
6070
+ */
6071
+ function ot_layout_get_font_extents2(font: font_t, direction: direction_t, script: script_t, language: language_t | null): [ /* returnType */ bool_t, /* extents */ font_extents_t | null ]
6003
6072
  /**
6004
6073
  * Fetches the GDEF class of the requested glyph in the specified face.
6005
6074
  * @param face The #hb_face_t to work on
@@ -6300,7 +6369,7 @@ function ot_layout_table_select_script(face: face_t, table_tag: tag_t, script_co
6300
6369
  *
6301
6370
  * However, if the requested constant is #HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN,
6302
6371
  * #HB_OT_MATH_CONSTANT_SCRIPT_SCRIPT_PERCENT_SCALE_DOWN or
6303
- * #HB_OT_MATH_CONSTANT_SCRIPT_PERCENT_SCALE_DOWN, then the return value is
6372
+ * #HB_OT_MATH_CONSTANT_RADICAL_DEGREE_BOTTOM_RAISE_PERCENT, then the return value is
6304
6373
  * an integer between 0 and 100 representing that percentage.
6305
6374
  * @param font #hb_font_t to work upon
6306
6375
  * @param constant #hb_ot_math_constant_t the constant to retrieve
@@ -6564,7 +6633,7 @@ function ot_tags_from_script(script: script_t): [ /* script_tag_1 */ tag_t, /* s
6564
6633
  * @param script_count maximum number of script tags to retrieve (IN) and actual number of script tags retrieved (OUT)
6565
6634
  * @param language_count maximum number of language tags to retrieve (IN) and actual number of language tags retrieved (OUT)
6566
6635
  */
6567
- function ot_tags_from_script_and_language(script: script_t, language: language_t, script_count?: number, language_count?: number): [ /* script_count */ number, /* script_tags */ tag_t, /* language_count */ number, /* language_tags */ tag_t ]
6636
+ function ot_tags_from_script_and_language(script: script_t, language: language_t | null, script_count?: number, language_count?: number): [ /* script_count */ number, /* script_tags */ tag_t, /* language_count */ number, /* language_tags */ tag_t ]
6568
6637
  /**
6569
6638
  * Converts a script tag and a language tag to an #hb_script_t and an
6570
6639
  * #hb_language_t.
@@ -6675,6 +6744,14 @@ function ot_var_normalize_variations(face: face_t, variations: variation_t, vari
6675
6744
  * @param color The color to use
6676
6745
  */
6677
6746
  function paint_color(funcs: paint_funcs_t, paint_data: any | null, is_foreground: bool_t, color: color_t): void
6747
+ /**
6748
+ * Perform a "color-glyph" paint operation.
6749
+ * @param funcs paint functions
6750
+ * @param paint_data associated data passed by the caller
6751
+ * @param glyph the glyph ID
6752
+ * @param font the font
6753
+ */
6754
+ function paint_color_glyph(funcs: paint_funcs_t, paint_data: any | null, glyph: codepoint_t, font: font_t): bool_t
6678
6755
  /**
6679
6756
  * Gets the custom palette color for `color_index`.
6680
6757
  * @param funcs paint functions
@@ -6718,6 +6795,12 @@ function paint_funcs_make_immutable(funcs: paint_funcs_t): void
6718
6795
  * @param func The paint-color callback
6719
6796
  */
6720
6797
  function paint_funcs_set_color_func(funcs: paint_funcs_t, func: paint_color_func_t): void
6798
+ /**
6799
+ * Sets the color-glyph callback on the paint functions struct.
6800
+ * @param funcs A paint functions struct
6801
+ * @param func The color-glyph callback
6802
+ */
6803
+ function paint_funcs_set_color_glyph_func(funcs: paint_funcs_t, func: paint_color_glyph_func_t): void
6721
6804
  /**
6722
6805
  * Sets the custom-palette-color callback on the paint functions struct.
6723
6806
  * @param funcs A paint functions struct
@@ -7839,6 +7922,18 @@ interface font_paint_glyph_func_t {
7839
7922
  interface paint_color_func_t {
7840
7923
  (funcs: paint_funcs_t, paint_data: any | null, is_foreground: bool_t, color: color_t): void
7841
7924
  }
7925
+ /**
7926
+ * A virtual method for the #hb_paint_funcs_t to render a color glyph by glyph index.
7927
+ * @callback
7928
+ * @param funcs paint functions object
7929
+ * @param paint_data The data accompanying the paint functions in hb_font_paint_glyph()
7930
+ * @param glyph the glyph ID
7931
+ * @param font the font
7932
+ * @returns %true if the glyph was painted, %false otherwise.
7933
+ */
7934
+ interface paint_color_glyph_func_t {
7935
+ (funcs: paint_funcs_t, paint_data: any | null, glyph: codepoint_t, font: font_t): bool_t
7936
+ }
7842
7937
  /**
7843
7938
  * A virtual method for the #hb_paint_funcs_t to fetch a color from the custom
7844
7939
  * color palette.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@girs/harfbuzz-0.0",
3
- "version": "7.1.0-3.2.2",
4
- "description": "GJS TypeScript type definitions for HarfBuzz-0.0, generated from library version 7.1.0",
3
+ "version": "8.2.1-3.2.4",
4
+ "description": "GJS TypeScript type definitions for HarfBuzz-0.0, generated from library version 8.2.1",
5
5
  "type": "module",
6
6
  "module": "harfbuzz-0.0.js",
7
7
  "main": "harfbuzz-0.0.js",
@@ -25,10 +25,10 @@
25
25
  "test:cjs": "NODE_OPTIONS=--max_old_space_size=9216 tsc --noEmit harfbuzz-0.0.d.cts"
26
26
  },
27
27
  "dependencies": {
28
- "@girs/freetype2-2.0": "^2.0.0-3.2.2",
29
- "@girs/gjs": "^3.2.2",
30
- "@girs/glib-2.0": "^2.77.0-3.2.2",
31
- "@girs/gobject-2.0": "^2.77.0-3.2.2"
28
+ "@girs/freetype2-2.0": "^2.0.0-3.2.4",
29
+ "@girs/gjs": "^3.2.4",
30
+ "@girs/glib-2.0": "^2.78.0-3.2.4",
31
+ "@girs/gobject-2.0": "^2.78.0-3.2.4"
32
32
  },
33
33
  "devDependencies": {
34
34
  "typescript": "*"