UNPKG

@fractorysolutions/safe-units

Version:
160 lines (159 loc) 2.76 kB
import { Exponent } from "./exponent"; export type DivideExponents<L extends Exponent, R extends Exponent> = DivideTable[L][R]; interface DivideTable { "-5": DividedByNeg5Table; "-4": DividedByNeg4Table; "-3": DividedByNeg3Table; "-2": DividedByNeg2Table; "-1": DividedByNeg1Table; "0": DividedByZeroTable; "1": DividedByPos1Table; "2": DividedByPos2Table; "3": DividedByPos3Table; "4": DividedByPos4Table; "5": DividedByPos5Table; } interface DividedByNeg5Table { "-5": "1"; "-4": never; "-3": never; "-2": never; "-1": "5"; "0": never; "1": "-5"; "2": never; "3": never; "4": never; "5": "-1"; } interface DividedByNeg4Table { "-5": never; "-4": "1"; "-3": never; "-2": "2"; "-1": "4"; "0": never; "1": "-4"; "2": "-2"; "3": never; "4": "-1"; "5": never; } interface DividedByNeg3Table { "-5": never; "-4": never; "-3": "1"; "-2": never; "-1": "3"; "0": never; "1": "-3"; "2": never; "3": "-1"; "4": never; "5": never; } interface DividedByNeg2Table { "-5": never; "-4": never; "-3": never; "-2": "1"; "-1": "2"; "0": never; "1": "-2"; "2": "-1"; "3": never; "4": never; "5": never; } interface DividedByNeg1Table { "-5": never; "-4": never; "-3": never; "-2": never; "-1": "1"; "0": never; "1": "-1"; "2": never; "3": never; "4": never; "5": never; } interface DividedByZeroTable { "-5": "0"; "-4": "0"; "-3": "0"; "-2": "0"; "-1": "0"; "0": never; "1": "0"; "2": "0"; "3": "0"; "4": "0"; "5": "0"; } interface DividedByPos1Table { "-5": never; "-4": never; "-3": never; "-2": never; "-1": "-1"; "0": never; "1": "1"; "2": never; "3": never; "4": never; "5": never; } interface DividedByPos2Table { "-5": never; "-4": never; "-3": never; "-2": "-1"; "-1": "-2"; "0": never; "1": "2"; "2": "1"; "3": never; "4": never; "5": never; } interface DividedByPos3Table { "-5": never; "-4": never; "-3": "-1"; "-2": never; "-1": "-3"; "0": never; "1": "3"; "2": never; "3": "1"; "4": never; "5": never; } interface DividedByPos4Table { "-5": never; "-4": "-1"; "-3": never; "-2": "-2"; "-1": "-4"; "0": never; "1": "4"; "2": "2"; "3": never; "4": "1"; "5": never; } interface DividedByPos5Table { "-5": "-1"; "-4": never; "-3": never; "-2": never; "-1": "-5"; "0": never; "1": "5"; "2": never; "3": never; "4": never; "5": "1"; } export {};