From ef3052419d92f6d64ce442b7ce206d9a586ef1ab Mon Sep 17 00:00:00 2001 From: Rory McGuinness Date: Tue, 18 Feb 2020 00:38:15 +0000 Subject: [PATCH] Remove Card interface from poker-evaluator. Simplify Deck interface to key: string (#42386) --- types/poker-evaluator/index.d.ts | 60 +------------------ .../poker-evaluator/poker-evaluator-tests.ts | 4 +- 2 files changed, 4 insertions(+), 60 deletions(-) diff --git a/types/poker-evaluator/index.d.ts b/types/poker-evaluator/index.d.ts index 172d279e4aa5a7..2b0615ee9d7708 100644 --- a/types/poker-evaluator/index.d.ts +++ b/types/poker-evaluator/index.d.ts @@ -6,11 +6,10 @@ /// export const HANDTYPES: HandName[]; -export const CARDS: Deck; export const ranks: Buffer; -export function evalHand(cards: Card[]): EvaluatedHand; -export function evalCard(card: Card): number; +export function evalHand(cards: string[]): EvaluatedHand; +export function evalCard(card: string): number; export type HandName = 'invalid hand' | @@ -25,62 +24,9 @@ export type HandName = 'straight flush'; export interface Deck { - '2c': 1; - '2d': 2; - '2h': 3; - '2s': 4; - '3c': 5; - '3d': 6; - '3h': 7; - '3s': 8; - '4c': 9; - '4d': 10; - '4h': 11; - '4s': 12; - '5c': 13; - '5d': 14; - '5h': 15; - '5s': 16; - '6c': 17; - '6d': 18; - '6h': 19; - '6s': 20; - '7c': 21; - '7d': 22; - '7h': 23; - '7s': 24; - '8c': 25; - '8d': 26; - '8h': 27; - '8s': 28; - '9c': 29; - '9d': 30; - '9h': 31; - '9s': 32; - 'tc': 33; - 'td': 34; - 'th': 35; - 'ts': 36; - 'jc': 37; - 'jd': 38; - 'jh': 39; - 'js': 40; - 'qc': 41; - 'qd': 42; - 'qh': 43; - 'qs': 44; - 'kc': 45; - 'kd': 46; - 'kh': 47; - 'ks': 48; - 'ac': 49; - 'ad': 50; - 'ah': 51; - 'as': 52; + [key: string]: number; } -export type Card = keyof Deck; - export interface EvaluatedHand { handType: number; // Index of HANDTYPES array handRank: number; diff --git a/types/poker-evaluator/poker-evaluator-tests.ts b/types/poker-evaluator/poker-evaluator-tests.ts index fdcfffef6a0874..dd95d675ba3a46 100644 --- a/types/poker-evaluator/poker-evaluator-tests.ts +++ b/types/poker-evaluator/poker-evaluator-tests.ts @@ -1,7 +1,6 @@ -import { HandName, Deck, Card, EvaluatedHand, CARDS, HANDTYPES, evalHand, ranks, evalCard } from 'poker-evaluator'; +import { Deck, evalCard, evalHand, EvaluatedHand, HandName, HANDTYPES, ranks } from 'poker-evaluator'; HANDTYPES; // $ExpectType HandName[] -CARDS; // $ExpectType Deck ranks; // $ExpectType Buffer evalHand(['as', 'ks', 'qs', 'js', 'ts', '3c', '5h']); // $ExpectType EvaluatedHand @@ -15,7 +14,6 @@ const result: EvaluatedHand = { evalCard('as'); // $ExpectType number const highCardName: HandName = 'high card'; -const card: Card = '2c'; const deck: Deck = { '2c': 1, '2d': 2,