@mentaport/common
Version:
Mentaport API helper package.
167 lines (158 loc) • 5.21 kB
TypeScript
/// <reference types="node" />
import { AxiosResponse, AxiosRequestConfig } from 'axios';
declare abstract class Base {
protected _apiKey: string;
private _baseUrl;
private _http;
constructor(apiKey: string);
/**
* Function to set the client environment
*
* @param {apiUrl} urlPath (optional)
*
* @returns {void}
*/
protected setClientSide(apiUrl: string): void;
protected request<T, R = AxiosResponse<T>>(config: AxiosRequestConfig): Promise<T>;
protected upload<T, R = AxiosResponse<T>>(config: AxiosRequestConfig, baseurl?: string): Promise<T>;
private handleError;
}
interface IPrototype {
prototype: any;
}
/**
* Typescripy Mixing to combine classes: https://www.typescriptlang.org/docs/handbook/mixins.html
*
*/
declare function applyCombination(derivedCtor: IPrototype, baseCtors: IPrototype[]): void;
/**
* Functions to help unit conversions
* @param unit to converty
* @returns converted unit
*/
declare function convertMetersToMiles(meters: number): number;
declare function convertMilesToMeters(miles: number): number;
declare function convertMetersToFeet(meters: number): number;
declare function convertFeetToMeters(feet: number): number;
declare function convertMetersToKilometers(meters: number): number;
declare function convertKilometersToMeters(kilometers: number): number;
declare function convertMilesToKilometers(miles: number): number;
declare function convertKilometersToMiles(kilometers: number): number;
declare function metersToKilometers(meters: number): number;
declare function kilometersToMeters(kilometers: number): number;
declare const utils_d_convertMetersToMiles: typeof convertMetersToMiles;
declare const utils_d_convertMilesToMeters: typeof convertMilesToMeters;
declare const utils_d_convertMetersToFeet: typeof convertMetersToFeet;
declare const utils_d_convertFeetToMeters: typeof convertFeetToMeters;
declare const utils_d_convertMetersToKilometers: typeof convertMetersToKilometers;
declare const utils_d_convertKilometersToMeters: typeof convertKilometersToMeters;
declare const utils_d_convertMilesToKilometers: typeof convertMilesToKilometers;
declare const utils_d_convertKilometersToMiles: typeof convertKilometersToMiles;
declare const utils_d_metersToKilometers: typeof metersToKilometers;
declare const utils_d_kilometersToMeters: typeof kilometersToMeters;
declare namespace utils_d {
export {
utils_d_convertMetersToMiles as convertMetersToMiles,
utils_d_convertMilesToMeters as convertMilesToMeters,
utils_d_convertMetersToFeet as convertMetersToFeet,
utils_d_convertFeetToMeters as convertFeetToMeters,
utils_d_convertMetersToKilometers as convertMetersToKilometers,
utils_d_convertKilometersToMeters as convertKilometersToMeters,
utils_d_convertMilesToKilometers as convertMilesToKilometers,
utils_d_convertKilometersToMiles as convertKilometersToMiles,
utils_d_metersToKilometers as metersToKilometers,
utils_d_kilometersToMeters as kilometersToMeters,
};
}
declare enum ContractStatus {
NonActive = "NonActive",
Pending = "Pending",
Active = "Active",
Paused = "Paused",
Archive = "Archive"
}
declare enum ContractEnvironment {
Localhost = "localhost",
Testnet = "testnet",
Mainnet = "mainnet",
Mezzanine = "mezzanine"
}
declare enum BlockchainTypes {
Ethereum = "ethereum",
Polygon = "polygon",
Base = "base",
Sui = "sui",
Monad = "monad",
Soneium = "soneium",
None = "none"
}
declare enum ContentSource {
tiktok = "tiktok",
youtube = "youtube",
youtubeMusic = "youtube-music",
instagram = "instagram",
x = "x",
spotify = "spotify",
soundcloud = "soundcloud",
website = "website"
}
interface ICertificateProject {
contractId: string;
projectId: string;
customerId: string;
ownerWallet: string;
projectName: string;
ownerName: string;
environment: ContractEnvironment;
blockchain: BlockchainTypes;
status: ContractStatus;
createdTimestamp: string;
registryProjectId?: string;
projectBaseURI?: string;
address?: string;
certificatesCount?: number;
}
/**
*
* Main common types
*
*/
declare enum Status {
NON_INIT = "Non-Initialized",
INIT = "Initializing",
COLLECTING = "Collecting",
SUCCESS = "Success",
NO_LOCATION = "No-Location",
FAILED = "Failed",
ERROR = "Error",
BLOCK = "Block"
}
declare enum Environment {
DEVELOPMENT = "DEVELOPMENT",
STAGING = "STAGING",
PRODUCTION = "PRODUCTION"
}
declare enum DistanceUnits {
meter = "m",
kilometers = "km",
miles = "mi",
ft = "feet"
}
interface IInfoStatus {
status: Status;
message: string;
data?: number;
}
interface IResults<T> {
status: boolean;
statusCode: number;
message: string;
data?: T;
}
type FormData = {
contractId: string;
address: string;
fileName: string;
fileData: Buffer;
};
export { Base, BlockchainTypes, ContentSource, ContractEnvironment, ContractStatus, DistanceUnits, Environment, FormData, ICertificateProject, IInfoStatus, IResults, utils_d as MentaportUtils, Status, applyCombination };