You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					30 lines
				
				792 B
			
		
		
			
		
	
	
					30 lines
				
				792 B
			| 
											3 years ago
										 | declare const stringWidth: { | ||
|  | 	/** | ||
|  | 	Get the visual width of a string - the number of columns required to display it. | ||
|  | 
 | ||
|  | 	Some Unicode characters are [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) and use double the normal width. [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) are stripped and doesn't affect the width.
 | ||
|  | 
 | ||
|  | 	@example | ||
|  | 	```
 | ||
|  | 	import stringWidth = require('string-width'); | ||
|  | 
 | ||
|  | 	stringWidth('a'); | ||
|  | 	//=> 1
 | ||
|  | 
 | ||
|  | 	stringWidth('古'); | ||
|  | 	//=> 2
 | ||
|  | 
 | ||
|  | 	stringWidth('\u001B[1m古\u001B[22m'); | ||
|  | 	//=> 2
 | ||
|  | 	```
 | ||
|  | 	*/ | ||
|  | 	(string: string): number; | ||
|  | 
 | ||
|  | 	// TODO: remove this in the next major version, refactor the whole definition to:
 | ||
|  | 	// declare function stringWidth(string: string): number;
 | ||
|  | 	// export = stringWidth;
 | ||
|  | 	default: typeof stringWidth; | ||
|  | } | ||
|  | 
 | ||
|  | export = stringWidth; |