diff --git a/types/twitter-text/index.d.ts b/types/twitter-text/index.d.ts index ca6fd66007..652f93da51 100644 --- a/types/twitter-text/index.d.ts +++ b/types/twitter-text/index.d.ts @@ -1,6 +1,6 @@ -// Type definitions for twitter-text v1.14.7 +// Type definitions for twitter-text v2.0.0 // Project: https://github.com/twitter/twitter-text -// Definitions by: rhysd +// Definitions by: rhysd // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -112,3 +112,28 @@ export declare function getUnicodeTextLength(text: string): number; export declare function convertUnicodeIndices(text: string, entities: EntityWithIndices[], indicesInUTF16?: boolean): void; export declare function hitHighlight(text: string, hits?: number[][], options?: { tag: string }): string; + +export interface ParseTweetOptions { + version?: number; + maxWeightedTweetLength?: number; + scale?: number; + defaultWeight?: number; + transformedURLLength?: number; + ranges?: Array<{ + start: number; + end: number; + weight: number; + }>; +} + +export interface ParsedTweet { + weightedLength: number; + permillage: number; + valid: boolean; + displayRangeEnd: number; + displayRangeStart: number; + validRangeEnd: number; + validRangeStart: number; +} + +export declare function parseTweet(text: string, options?: ParseTweetOptions): ParsedTweet; diff --git a/types/twitter-text/twitter-text-tests.ts b/types/twitter-text/twitter-text-tests.ts index a8e198e410..fdf816ec8f 100644 --- a/types/twitter-text/twitter-text-tests.ts +++ b/types/twitter-text/twitter-text-tests.ts @@ -60,3 +60,6 @@ const linked: string = twitter.autoLink("link @user, and expand url... http://t. ]}); const usernames: string[] = twitter.extractMentions("Mentioning @twitter and @jack"); + +const tweet = twitter.parseTweet('foo'); +const tweetWithOptions = twitter.parseTweet('foo', {maxWeightedTweetLength: 140});