Closed joaomantovani closed 3 months ago
It's not completed, but a start if anyone needs TS on the project.
Create a flightradar24.d.ts file on your project folder
flightradar24.d.ts
Add this code on the file:
// index.d.ts declare module 'flightradarapi' { export class FlightRadar24API { private __flightTrackerConfig: FlightTrackerConfig; private __loginData: { userData: any; cookies: any; } | null; constructor(); async getAirlines(): Promise<object>; async getAirlineLogo( iata: string, icao: string, ): Promise<[object, string] | undefined>; async getAirport(code: string, details?: boolean): Promise<Airport>; async getAirportDetails( code: string, flightLimit?: number, page?: number, ): Promise<object>; async getAirportDisruptions(): Promise<object>; async getAirports(): Promise<Airport[]>; async getBookmarks(): Promise<object>; getBounds(zone: { tl_y: number; br_y: number; tl_x: number; br_x: number; }): string; getBoundsByPoint( latitude: number, longitude: number, radius: number, ): string; async getCountryFlag( country: string, ): Promise<[object, string] | undefined>; async getFlightDetails(flight: Flight): Promise<object>; async getFlights( airline?: string | null, bounds?: string | null, registration?: string | null, aircraftType?: string | null, details?: boolean, ): Promise<Flight[]>; getFlightTrackerConfig(): FlightTrackerConfig; async getHistoryData( flight: Flight, fileType: string, timestamp: number, ): Promise<any>; getLoginData(): object; async getMostTracked(): Promise<object>; async getVolcanicEruptions(): Promise<object>; async getZones(): Promise<object>; async search(query: string, limit?: number): Promise<object>; isLoggedIn(): boolean; async login(user: string, password: string): Promise<void>; async logout(): Promise<boolean>; async setFlightTrackerConfig( flightTrackerConfig: FlightTrackerConfig | null, config?: object, ): Promise<void>; } export class FlightTrackerConfig { // Add method and property signatures here } export class Airport extends Entity { latitude: number; longitude: number; altitude: number; name: string; icao: string; iata: string; country: string; constructor(basicInfo?: AirportData, info?: object) { super(); if (basicInfo) { this.__initializeWithBasicInfo(basicInfo); } if (info) { this.__initializeWithInfo(info); } } private __initializeWithBasicInfo(basicInfo: AirportData): void { this.latitude = basicInfo.latitude; this.longitude = basicInfo.longitude; this.altitude = basicInfo.altitude; this.name = basicInfo.name; this.icao = basicInfo.icao; this.iata = basicInfo.iata; this.country = basicInfo.country; } private __initializeWithInfo(info: object): void { // Initialize with info } setAirportDetails(airportDetails: object): void { // Set airport details } } export class Entity { latitude: number | null; longitude: number | null; constructor(latitude?: number | null, longitude?: number | null); private __setPosition( latitude: number | null, longitude: number | null, ): void; private __getInfo(info: any, replaceBy?: any): any; getDistanceFrom(entity: Entity): number; } export class Flight { // Add method and property signatures here } export class AirportNotFoundError extends Error { constructor(message?: string); } export class CloudflareError extends Error { constructor(message?: string); } export class LoginError extends Error { constructor(message?: string); } export const author: string; export const version: string; }
Hi João! Thank you for your contribution! 😍
I just added a d.ts module to the project.
d.ts
It's not completed, but a start if anyone needs TS on the project.
Step 1
Create a
flightradar24.d.ts
file on your project folderStep 2
Add this code on the file: