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.
61 lines
1.8 KiB
61 lines
1.8 KiB
3 years ago
|
declare module 'Fraction';
|
||
|
|
||
|
export interface NumeratorDenominator {
|
||
|
n: number;
|
||
|
d: number;
|
||
|
}
|
||
|
|
||
|
type FractionConstructor = {
|
||
|
(fraction: Fraction): Fraction;
|
||
|
(num: number | string): Fraction;
|
||
|
(numerator: number, denominator: number): Fraction;
|
||
|
(numbers: [number | string, number | string]): Fraction;
|
||
|
(fraction: NumeratorDenominator): Fraction;
|
||
|
(firstValue: Fraction | number | string | [number | string, number | string] | NumeratorDenominator, secondValue?: number): Fraction;
|
||
|
};
|
||
|
|
||
|
export default class Fraction {
|
||
|
constructor (fraction: Fraction);
|
||
|
constructor (num: number | string);
|
||
|
constructor (numerator: number, denominator: number);
|
||
|
constructor (numbers: [number | string, number | string]);
|
||
|
constructor (fraction: NumeratorDenominator);
|
||
|
constructor (firstValue: Fraction | number | string | [number | string, number | string] | NumeratorDenominator, secondValue?: number);
|
||
|
|
||
|
s: number;
|
||
|
n: number;
|
||
|
d: number;
|
||
|
|
||
|
abs(): Fraction;
|
||
|
neg(): Fraction;
|
||
|
|
||
|
add: FractionConstructor;
|
||
|
sub: FractionConstructor;
|
||
|
mul: FractionConstructor;
|
||
|
div: FractionConstructor;
|
||
|
pow: FractionConstructor;
|
||
|
gcd: FractionConstructor;
|
||
|
lcm: FractionConstructor;
|
||
|
|
||
|
mod(n?: number | string | Fraction): Fraction;
|
||
|
|
||
|
ceil(places?: number): Fraction;
|
||
|
floor(places?: number): Fraction;
|
||
|
round(places?: number): Fraction;
|
||
|
|
||
|
inverse(): Fraction;
|
||
|
|
||
|
simplify(eps?: number): Fraction;
|
||
|
|
||
|
equals(n: number | string | Fraction): boolean;
|
||
|
compare(n: number | string | Fraction): number;
|
||
|
divisible(n: number | string | Fraction): boolean;
|
||
|
|
||
|
valueOf(): number;
|
||
|
toString(decimalPlaces?: number): string;
|
||
|
toLatex(excludeWhole?: boolean): string;
|
||
|
toFraction(excludeWhole?: boolean): string;
|
||
|
toContinued(): number[];
|
||
|
clone(): Fraction;
|
||
|
}
|