# grapheme
> Grapheme cluster break tooling.
## Usage
```javascript
var grapheme = require( '@stdlib/string/tools/grapheme-cluster-break' );
```
#### grapheme
A collection of functions for performing grapheme cluster break operations.
* * *
### Methods
#### grapheme.breakProperty( code )
Returns the grapheme break property from the [Unicode Standard][unicode-grapheme-break-property].
```javascript
var out = grapheme.breakProperty( 0x008f );
// returns 2
out = grapheme.breakProperty( 0x111C2 );
// returns 12
out = grapheme.breakProperty( 0x1F3FC );
// returns 3
```
#### grapheme.emojiProperty( code )
Returns the emoji property from the [Unicode Standard][unicode-emoji-property].
```javascript
var out = grapheme.emojiProperty( 0x23EC );
// returns 101
out = grapheme.emojiProperty( 0x1FFFE );
// returns 11
```
#### grapheme.breakType( breaks, emoji )
Returns the break type between grapheme breaking classes according to _UAX #29 3.1.1 Grapheme Cluster Boundary Rules_ on extended grapheme clusters.
```javascript
var out = grapheme.breakType( [ 11, 3, 11 ], [ 11, 11, 11 ] );
// returns 1
```
* * *
### Properties
#### grapheme.constants
An object mapping break type names to integer values.
```javascript
var out = grapheme.constants;
// returns {...}
```
## Examples
```javascript
var grapheme = require( '@stdlib/string/tools/grapheme-cluster-break' );
var out = grapheme.breakProperty( 0x008f );
// returns 2
out = grapheme.emojiProperty( 0x23EC );
// returns 101
out = grapheme.breakType( [ 11, 3, 11 ], [ 11, 11, 11 ] );
// returns 1
out = grapheme.constants;
// returns {...}
```
[unicode-grapheme-break-property]: https://www.unicode.org/Public/13.0.0/ucd/auxiliary/GraphemeBreakProperty.txt
[unicode-emoji-property]: https://www.unicode.org/Public/13.0.0/ucd/emoji/emoji-data.txt