Files
vastly/frontend/wailsjs/go/models.ts
2024-12-16 21:04:05 -06:00

234 lines
7.6 KiB
TypeScript

export namespace api {
export class ExtendedOfferDetails {
gpuCostPerHour: number;
diskHour: number;
totalHour: number;
discountTotalHour: number;
discountPerHour: number;
static createFrom(source: any = {}) {
return new ExtendedOfferDetails(source);
}
constructor(source: any = {}) {
if ('string' === typeof source) source = JSON.parse(source);
this.gpuCostPerHour = source["gpuCostPerHour"];
this.diskHour = source["diskHour"];
this.totalHour = source["totalHour"];
this.discountTotalHour = source["discountTotalHour"];
this.discountPerHour = source["discountPerHour"];
}
}
export class Offer {
is_bid: boolean;
inet_up_billed?: number;
inet_down_billed?: number;
external: boolean;
webpage?: string;
logo: string;
rentable: boolean;
compute_cap: number;
driver_version: string;
cuda_max_good: number;
machine_id: number;
hosting_type?: number;
public_ipaddr: string;
geolocation: string;
geolocode?: number;
flops_per_dphtotal: number;
dlperf_per_dphtotal: number;
reliability2: number;
host_run_time: number;
host_id: number;
id: number;
bundle_id: number;
num_gpus: number;
total_flops: number;
min_bid: number;
dph_base: number;
dph_total: number;
gpu_name: string;
gpu_arch: string;
gpu_ram: number;
gpu_display_active: boolean;
gpu_mem_bw: number;
bw_nvlink: number;
direct_port_count: number;
gpu_lanes: number;
pcie_bw: number;
pci_gen: number;
dlperf: number;
cpu_name: string;
mobo_name: string;
cpu_ram: number;
cpu_cores: number;
cpu_cores_effective: number;
gpu_frac: number;
has_avx: number;
disk_space: number;
disk_name: string;
disk_bw: number;
inet_up: number;
inet_down: number;
start_date: number;
end_date?: number;
duration?: number;
storage_cost: number;
inet_up_cost: number;
inet_down_cost: number;
storage_total_cost: number;
verification: string;
score: number;
rented: boolean;
bundled_results: number;
pending_count: number;
search: ExtendedOfferDetails;
instance: ExtendedOfferDetails;
static createFrom(source: any = {}) {
return new Offer(source);
}
constructor(source: any = {}) {
if ('string' === typeof source) source = JSON.parse(source);
this.is_bid = source["is_bid"];
this.inet_up_billed = source["inet_up_billed"];
this.inet_down_billed = source["inet_down_billed"];
this.external = source["external"];
this.webpage = source["webpage"];
this.logo = source["logo"];
this.rentable = source["rentable"];
this.compute_cap = source["compute_cap"];
this.driver_version = source["driver_version"];
this.cuda_max_good = source["cuda_max_good"];
this.machine_id = source["machine_id"];
this.hosting_type = source["hosting_type"];
this.public_ipaddr = source["public_ipaddr"];
this.geolocation = source["geolocation"];
this.geolocode = source["geolocode"];
this.flops_per_dphtotal = source["flops_per_dphtotal"];
this.dlperf_per_dphtotal = source["dlperf_per_dphtotal"];
this.reliability2 = source["reliability2"];
this.host_run_time = source["host_run_time"];
this.host_id = source["host_id"];
this.id = source["id"];
this.bundle_id = source["bundle_id"];
this.num_gpus = source["num_gpus"];
this.total_flops = source["total_flops"];
this.min_bid = source["min_bid"];
this.dph_base = source["dph_base"];
this.dph_total = source["dph_total"];
this.gpu_name = source["gpu_name"];
this.gpu_arch = source["gpu_arch"];
this.gpu_ram = source["gpu_ram"];
this.gpu_display_active = source["gpu_display_active"];
this.gpu_mem_bw = source["gpu_mem_bw"];
this.bw_nvlink = source["bw_nvlink"];
this.direct_port_count = source["direct_port_count"];
this.gpu_lanes = source["gpu_lanes"];
this.pcie_bw = source["pcie_bw"];
this.pci_gen = source["pci_gen"];
this.dlperf = source["dlperf"];
this.cpu_name = source["cpu_name"];
this.mobo_name = source["mobo_name"];
this.cpu_ram = source["cpu_ram"];
this.cpu_cores = source["cpu_cores"];
this.cpu_cores_effective = source["cpu_cores_effective"];
this.gpu_frac = source["gpu_frac"];
this.has_avx = source["has_avx"];
this.disk_space = source["disk_space"];
this.disk_name = source["disk_name"];
this.disk_bw = source["disk_bw"];
this.inet_up = source["inet_up"];
this.inet_down = source["inet_down"];
this.start_date = source["start_date"];
this.end_date = source["end_date"];
this.duration = source["duration"];
this.storage_cost = source["storage_cost"];
this.inet_up_cost = source["inet_up_cost"];
this.inet_down_cost = source["inet_down_cost"];
this.storage_total_cost = source["storage_total_cost"];
this.verification = source["verification"];
this.score = source["score"];
this.rented = source["rented"];
this.bundled_results = source["bundled_results"];
this.pending_count = source["pending_count"];
this.search = this.convertValues(source["search"], ExtendedOfferDetails);
this.instance = this.convertValues(source["instance"], ExtendedOfferDetails);
}
convertValues(a: any, classs: any, asMap: boolean = false): any {
if (!a) {
return a;
}
if (a.slice && a.map) {
return (a as any[]).map(elem => this.convertValues(elem, classs));
} else if ("object" === typeof a) {
if (asMap) {
for (const key of Object.keys(a)) {
a[key] = new classs(a[key]);
}
return a;
}
return new classs(a);
}
return a;
}
}
export class ScoreReason {
Reason: string;
Offset: number;
Value: any;
IsMultiplier: boolean;
static createFrom(source: any = {}) {
return new ScoreReason(source);
}
constructor(source: any = {}) {
if ('string' === typeof source) source = JSON.parse(source);
this.Reason = source["Reason"];
this.Offset = source["Offset"];
this.Value = source["Value"];
this.IsMultiplier = source["IsMultiplier"];
}
}
export class ScoredOffer {
Offer: Offer;
Score: number;
Reasons: ScoreReason[];
static createFrom(source: any = {}) {
return new ScoredOffer(source);
}
constructor(source: any = {}) {
if ('string' === typeof source) source = JSON.parse(source);
this.Offer = this.convertValues(source["Offer"], Offer);
this.Score = source["Score"];
this.Reasons = this.convertValues(source["Reasons"], ScoreReason);
}
convertValues(a: any, classs: any, asMap: boolean = false): any {
if (!a) {
return a;
}
if (a.slice && a.map) {
return (a as any[]).map(elem => this.convertValues(elem, classs));
} else if ("object" === typeof a) {
if (asMap) {
for (const key of Object.keys(a)) {
a[key] = new classs(a[key]);
}
return a;
}
return new classs(a);
}
return a;
}
}
}