diff --git a/lib/node_modules/@stdlib/string/base/docs/types/index.d.ts b/lib/node_modules/@stdlib/string/base/docs/types/index.d.ts index 72b586ff45de..9408d10b17a5 100644 --- a/lib/node_modules/@stdlib/string/base/docs/types/index.d.ts +++ b/lib/node_modules/@stdlib/string/base/docs/types/index.d.ts @@ -68,6 +68,9 @@ import reverseCodePoints = require( '@stdlib/string/base/reverse-code-points' ); import reverseGraphemeClusters = require( '@stdlib/string/base/reverse-grapheme-clusters' ); import rpad = require( '@stdlib/string/base/right-pad' ); import rtrim = require( '@stdlib/string/base/right-trim' ); +import slice = require( '@stdlib/string/base/slice' ); +import sliceCodePoints = require( '@stdlib/string/base/slice-code-points' ); +import sliceGraphemeClusters = require( '@stdlib/string/base/slice-grapheme-clusters' ); import snakecase = require( '@stdlib/string/base/snakecase' ); import startcase = require( '@stdlib/string/base/startcase' ); import startsWith = require( '@stdlib/string/base/starts-with' ); @@ -1083,7 +1086,7 @@ interface Namespace { * * @example * var out = ns.replaceBefore( 'Hello World!', '', 'foo', 0 ); - * // returns 'Hello World!' + * // returns 'Hello world!' * * @example * var out = ns.replaceBefore( 'Hello World!', 'xyz', 'foo', 0 ); @@ -1272,6 +1275,81 @@ interface Namespace { */ rtrim: typeof rtrim; + /** + * Slices UTF-16 code units from a string. + * + * @param str - input string + * @param start - slice start index (inclusive) + * @param end - slice end index (exclusive) + * @returns output string + * + * @example + * var out = ns.slice( 'last man standing', 1, 17 ); + * // returns 'ast man standing' + * + * @example + * var out = ns.slice( 'presidential election', 1, 21 ); + * // returns 'residential election' + * + * @example + * var out = ns.slice( 'JavaScript', 4, 10 ); + * // returns 'Script' + * + * @example + * var out = ns.slice( 'Hidden Treasures', 0, 6 ); + * // returns 'Hidden' + * + * @example + * var out = ns.slice( 'foo bar', 2, 7 ); + * // returns 'ar' + * + * @example + * var out = ns.slice( 'foo bar', -1, 7 ); + * // returns 'r' + */ + slice: typeof slice; + + /** + * Slices a string based on Unicode code point indices. + * + * @param str - input string + * @param start - the `ith` Unicode code point to start a slice (inclusive) + * @param end - the `jth` Unicode code point to end a slice (exclusive) + * @returns output string + * + * @example + * var out = ns.sliceCodePoints( 'Hello ๐Ÿ‘‹ World', 1, 3 ); + * // returns 'el' + * + * @example + * var out = ns.sliceCodePoints( '๐Ÿ‘‹๐Ÿ‘‹๐Ÿ‘‹', 1, 2 ); + * // returns '๐Ÿ‘‹' + */ + sliceCodePoints: typeof sliceCodePoints; + + /** + * Slices a string based on grapheme cluster (i.e., user-perceived character) indices. + * + * @param str - input string + * @param start - the `ith` grapheme cluster to start a slice (inclusive) + * @param end - the `jth` grapheme cluster to end a slice (exclusive) + * @returns output string + * + * @example + * var out = ns.sliceGraphemeClusters( 'Hello World', 0, 5 ); + * // returns 'Hello' + * + * out = ns.sliceGraphemeClusters( '๐Ÿ‘‹๐Ÿ‘‹๐Ÿ‘‹', 0, 2 ); + * // returns '๐Ÿ‘‹๐Ÿ‘‹' + * + * out = ns.sliceGraphemeClusters( 'เค…เคจเฅเคšเฅเค›เฅ‡เคฆ', 1, 3 ); + * // returns 'เคจเฅเคšเฅ' + * + * out = ns.sliceGraphemeClusters( 'Hello World', -5, -1 ); + * // returns 'Worl' + */ + sliceGraphemeClusters: typeof sliceGraphemeClusters; + /** * Converts a string to snake case. *