61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| 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;
 | |
| }
 |