cloreai 3.0.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/README.md +68 -47
  2. package/{build → dist}/Cloreai.d.ts +20 -17
  3. package/dist/Cloreai.js +267 -0
  4. package/dist/CloreaiError.d.ts +17 -0
  5. package/dist/CloreaiError.js +13 -0
  6. package/dist/Gigaspot.d.ts +15 -0
  7. package/dist/Gigaspot.js +71 -0
  8. package/{build → dist}/constants.d.ts +0 -1
  9. package/{build → dist}/constants.js +0 -1
  10. package/package.json +12 -14
  11. package/build/Cloreai.js +0 -125
  12. package/build/CloreaiError.d.ts +0 -12
  13. package/build/CloreaiError.js +0 -16
  14. package/build/Gigaspot.d.ts +0 -17
  15. package/build/Gigaspot.js +0 -46
  16. package/build/getQueueOptions.d.ts +0 -3
  17. package/build/getQueueOptions.js +0 -8
  18. package/{build → dist}/index.d.ts +0 -0
  19. package/{build → dist}/index.js +0 -0
  20. package/{build → dist}/resources/cancelOrder.d.ts +0 -0
  21. package/{build → dist}/resources/cancelOrder.js +0 -0
  22. package/{build → dist}/resources/cancelOrders.d.ts +0 -0
  23. package/{build → dist}/resources/cancelOrders.js +0 -0
  24. package/{build → dist}/resources/createGigaspotOrders.d.ts +1 -1
  25. package/{build → dist}/resources/createGigaspotOrders.js +0 -0
  26. package/{build → dist}/resources/createOrder.d.ts +8 -8
  27. package/{build → dist}/resources/createOrder.js +0 -0
  28. package/{build → dist}/resources/editGigaspotOrders.d.ts +1 -1
  29. package/{build → dist}/resources/editGigaspotOrders.js +0 -0
  30. package/{build → dist}/resources/getGigaspot.d.ts +23 -23
  31. package/{build → dist}/resources/getGigaspot.js +0 -0
  32. package/{build → dist}/resources/marketplace.d.ts +3 -3
  33. package/{build → dist}/resources/marketplace.js +0 -0
  34. package/{build → dist}/resources/myOrders.d.ts +4 -4
  35. package/{build → dist}/resources/myOrders.js +0 -0
  36. package/{build → dist}/resources/myServers.d.ts +4 -4
  37. package/{build → dist}/resources/myServers.js +0 -0
  38. package/{build → dist}/resources/pohBalance.d.ts +16 -16
  39. package/{build → dist}/resources/pohBalance.js +0 -0
  40. package/{build → dist}/resources/renterFees.d.ts +12 -12
  41. package/{build → dist}/resources/renterFees.js +0 -0
  42. package/{build → dist}/resources/serverConfig.d.ts +8 -8
  43. package/{build → dist}/resources/serverConfig.js +0 -0
  44. package/{build → dist}/resources/setServerSettings.d.ts +0 -0
  45. package/{build → dist}/resources/setServerSettings.js +0 -0
  46. package/{build → dist}/resources/setSpotPrice.d.ts +1 -1
  47. package/{build → dist}/resources/setSpotPrice.js +0 -0
  48. package/{build → dist}/resources/spotMarketplace.d.ts +9 -9
  49. package/{build → dist}/resources/spotMarketplace.js +0 -0
  50. package/{build → dist}/resources/wallets.d.ts +3 -3
  51. /package/{build → dist}/resources/wallets.js +0 -0
  52. /package/{build → dist}/types.d.ts +0 -0
  53. /package/{build → dist}/types.js +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cloreai",
3
- "version": "3.0.0",
3
+ "version": "4.0.1",
4
4
  "description": "CLORE.AI API client",
5
5
  "keywords": [
6
6
  "cloreai",
@@ -14,33 +14,31 @@
14
14
  "license": "MIT",
15
15
  "author": "Vladislav Puzyrev",
16
16
  "type": "module",
17
- "main": "build/index.js",
18
- "types": "build/index.d.ts",
17
+ "main": "dist/index.js",
18
+ "types": "dist/index.d.ts",
19
19
  "scripts": {
20
- "build": "tsc --project tsconfig.build.json",
20
+ "build": "rimraf dist && tsc --project tsconfig.build.json",
21
21
  "check": "npm run typecheck && npm run lint && npm run format",
22
- "clean": "rimraf build",
23
22
  "format": "prettier --check .",
24
23
  "lint": "eslint .",
25
- "prepack": "npm run clean && npm run build && npm run check",
24
+ "prepack": "npm run build && npm run check",
26
25
  "prepare": "husky",
27
26
  "typecheck": "tsc --noEmit"
28
27
  },
29
28
  "dependencies": {
30
- "axios": "^1.13.5",
31
- "p-queue": "^9.1.0"
29
+ "p-queue": "^9.1.2"
32
30
  },
33
31
  "devDependencies": {
34
32
  "@tsconfig/node-lts": "^24.0.0",
35
33
  "@tsconfig/node-ts": "^23.6.4",
36
34
  "@tsconfig/strictest": "^2.0.8",
37
- "@types/node": "^25.3.0",
38
- "eslint": "^9.39.3",
39
- "eslint-config-vladpuz": "^2.5.1",
35
+ "@types/node": "^25.6.0",
36
+ "eslint": "^10.2.1",
37
+ "eslint-config-vladpuz": "^4.0.1",
40
38
  "husky": "^9.1.7",
41
- "prettier": "^3.8.1",
42
- "prettier-config-vladpuz": "^2.0.0",
39
+ "prettier": "^3.8.3",
40
+ "prettier-config-vladpuz": "^3.0.0",
43
41
  "rimraf": "^6.1.3",
44
- "typescript": "^5.9.3"
42
+ "typescript": "^6.0.3"
45
43
  }
46
44
  }
package/build/Cloreai.js DELETED
@@ -1,125 +0,0 @@
1
- import axios, {} from 'axios';
2
- import PQueue, {} from 'p-queue';
3
- import { CloreaiError } from "./CloreaiError.js";
4
- import { priorityLevels, RATE_LIMIT, RATE_LIMIT_CREATE_ORDER, statusCodes } from "./constants.js";
5
- import { getQueueOptions } from "./getQueueOptions.js";
6
- import Gigaspot from "./Gigaspot.js";
7
- class Cloreai {
8
- axios;
9
- queue;
10
- queueCreateOrder;
11
- gigaspot;
12
- constructor(apiKey, options = {}) {
13
- this.queue = new PQueue({
14
- interval: RATE_LIMIT,
15
- intervalCap: 1,
16
- concurrency: 1,
17
- ...options.queueOptions,
18
- });
19
- this.queueCreateOrder = new PQueue({
20
- interval: RATE_LIMIT_CREATE_ORDER,
21
- intervalCap: 1,
22
- concurrency: 1,
23
- ...options.queueCreateOrderOptions,
24
- });
25
- this.axios = axios.create({
26
- baseURL: 'https://api.clore.ai/v1',
27
- ...options.axiosOptions,
28
- });
29
- this.axios.interceptors.request.use((request) => {
30
- request.headers.set('auth', apiKey);
31
- return request;
32
- });
33
- this.axios.interceptors.response.use((response) => {
34
- if (response.data.code === statusCodes.NORMAL) {
35
- return response;
36
- }
37
- const errorMessage = `Code "${response.data.code}"`;
38
- const error = new CloreaiError(errorMessage, {
39
- code: String(response.data.code),
40
- config: response.config,
41
- request: response.request,
42
- response,
43
- });
44
- if (response.data.error != null) {
45
- error.message += `, error "${response.data.error}"`;
46
- error.error = response.data.error;
47
- }
48
- throw error;
49
- });
50
- this.gigaspot = new Gigaspot(options, this.axios);
51
- }
52
- async wallets(config) {
53
- const response = await this.queue.add(async () => {
54
- return await this.axios.get('/wallets', config);
55
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
56
- return response.data;
57
- }
58
- async myServers(config) {
59
- const response = await this.queue.add(async () => {
60
- return await this.axios.get('/my_servers', config);
61
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
62
- return response.data;
63
- }
64
- async serverConfig(data, config) {
65
- const response = await this.queue.add(async () => {
66
- return await this.axios.get('/server_config', { ...config, data });
67
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
68
- return response.data;
69
- }
70
- async marketplace(config) {
71
- const response = await this.queue.add(async () => {
72
- return await this.axios.get('/marketplace', config);
73
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
74
- return response.data;
75
- }
76
- async myOrders(params, config) {
77
- const response = await this.queue.add(async () => {
78
- return await this.axios.get('/my_orders', { ...config, params });
79
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
80
- return response.data;
81
- }
82
- async spotMarketplace(params, config) {
83
- const response = await this.queue.add(async () => {
84
- return await this.axios.get('/spot_marketplace', { ...config, params });
85
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
86
- return response.data;
87
- }
88
- async setServerSettings(data, config) {
89
- const response = await this.queue.add(async () => {
90
- return await this.axios.post('/set_server_settings', data, config);
91
- }, getQueueOptions(priorityLevels.HIGH, this.axios, config));
92
- return response.data;
93
- }
94
- async setSpotPrice(data, config) {
95
- const response = await this.queue.add(async () => {
96
- return await this.axios.post('/set_spot_price', data, config);
97
- }, getQueueOptions(priorityLevels.HIGH, this.axios, config));
98
- return response.data;
99
- }
100
- async cancelOrder(data, config) {
101
- const response = await this.queue.add(async () => {
102
- return await this.axios.post('/cancel_order', data, config);
103
- }, getQueueOptions(priorityLevels.HIGH, this.axios, config));
104
- return response.data;
105
- }
106
- async createOrder(data, config) {
107
- const response = await this.queueCreateOrder.add(async () => {
108
- return await this.axios.post('/create_order', data, config);
109
- }, getQueueOptions(priorityLevels.HIGHEST, this.axios, config));
110
- return response.data;
111
- }
112
- async pohBalance(config) {
113
- const response = await this.queue.add(async () => {
114
- return await this.axios.get('/poh_balance', config);
115
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
116
- return response.data;
117
- }
118
- async renterFees(config) {
119
- const response = await this.queue.add(async () => {
120
- return await this.axios.get('/renter_fees', config);
121
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
122
- return response.data;
123
- }
124
- }
125
- export default Cloreai;
@@ -1,12 +0,0 @@
1
- import { AxiosError, type AxiosResponse, type InternalAxiosRequestConfig } from 'axios';
2
- export interface CloreaiErrorOptions<T = unknown, D = unknown> extends ErrorOptions {
3
- code?: string;
4
- config?: InternalAxiosRequestConfig<D>;
5
- request?: unknown;
6
- response?: AxiosResponse<T, D>;
7
- error?: string;
8
- }
9
- export declare class CloreaiError<T = unknown, D = unknown> extends AxiosError<T, D> {
10
- error?: string;
11
- constructor(message?: string, options?: CloreaiErrorOptions<T, D>);
12
- }
@@ -1,16 +0,0 @@
1
- import { AxiosError } from 'axios';
2
- export class CloreaiError extends AxiosError {
3
- error;
4
- constructor(message, options = {}) {
5
- super(message, options.code, options.config, options.request, options.response);
6
- this.name = 'CloreaiError';
7
- if (options.cause != null) {
8
- this.cause = (options.cause instanceof Error)
9
- ? options.cause
10
- : new Error(String(options.cause));
11
- }
12
- if (options.error != null) {
13
- this.error = options.error;
14
- }
15
- }
16
- }
@@ -1,17 +0,0 @@
1
- import { type AxiosInstance, type AxiosRequestConfig } from 'axios';
2
- import PQueue from 'p-queue';
3
- import type { Options } from './Cloreai.ts';
4
- import type { CancelOrdersRequestData, CancelOrdersResponseData } from './resources/cancelOrders.ts';
5
- import type { CreateGigaspotOrdersRequestData, CreateGigaspotOrdersResponseData } from './resources/createGigaspotOrders.ts';
6
- import type { EditGigaspotOrdersRequestData, EditGigaspotOrdersResponseData } from './resources/editGigaspotOrders.ts';
7
- import type { GetGigaspotResponseData } from './resources/getGigaspot.ts';
8
- declare class Gigaspot {
9
- axios: AxiosInstance;
10
- queue: PQueue;
11
- constructor(options: Options, axios: AxiosInstance);
12
- getGigaspot(config?: AxiosRequestConfig): Promise<GetGigaspotResponseData>;
13
- createGigaspotOrders(data: CreateGigaspotOrdersRequestData, config?: AxiosRequestConfig): Promise<CreateGigaspotOrdersResponseData>;
14
- editGigaspotOrders(data: EditGigaspotOrdersRequestData, config?: AxiosRequestConfig): Promise<EditGigaspotOrdersResponseData>;
15
- cancelOrders(data: CancelOrdersRequestData, config?: AxiosRequestConfig): Promise<CancelOrdersResponseData>;
16
- }
17
- export default Gigaspot;
package/build/Gigaspot.js DELETED
@@ -1,46 +0,0 @@
1
- import axios, {} from 'axios';
2
- import PQueue from 'p-queue';
3
- import { priorityLevels, RATE_LIMIT_GIGASPOT } from "./constants.js";
4
- import { getQueueOptions } from "./getQueueOptions.js";
5
- class Gigaspot {
6
- axios;
7
- queue;
8
- constructor(options, axios) {
9
- this.queue = new PQueue({
10
- interval: RATE_LIMIT_GIGASPOT,
11
- intervalCap: 1,
12
- concurrency: 1,
13
- ...options.queueGigaspotOptions,
14
- });
15
- this.axios = axios;
16
- }
17
- async getGigaspot(config) {
18
- return await this.queue.add(async () => {
19
- const response = await this.axios.get('/get_gigaspot', config);
20
- const snapshot = await axios.get(response.data.v1_snapshot_url);
21
- return {
22
- ...response.data,
23
- snapshot: snapshot.data,
24
- };
25
- }, getQueueOptions(priorityLevels.NORMAL, this.axios, config));
26
- }
27
- async createGigaspotOrders(data, config) {
28
- const response = await this.queue.add(async () => {
29
- return await this.axios.post('/create_gigaspot_orders', data, config);
30
- }, getQueueOptions(priorityLevels.HIGH, this.axios, config));
31
- return response.data;
32
- }
33
- async editGigaspotOrders(data, config) {
34
- const response = await this.queue.add(async () => {
35
- return await this.axios.post('/edit_gigaspot_orders', data, config);
36
- }, getQueueOptions(priorityLevels.HIGH, this.axios, config));
37
- return response.data;
38
- }
39
- async cancelOrders(data, config) {
40
- const response = await this.queue.add(async () => {
41
- return await this.axios.post('/cancel_orders', data, config);
42
- }, getQueueOptions(priorityLevels.HIGH, this.axios, config));
43
- return response.data;
44
- }
45
- }
46
- export default Gigaspot;
@@ -1,3 +0,0 @@
1
- import type { AxiosInstance, AxiosRequestConfig } from 'axios';
2
- import type { QueueAddOptions } from 'p-queue';
3
- export declare function getQueueOptions(priority: number, axios: AxiosInstance, config?: AxiosRequestConfig): QueueAddOptions;
@@ -1,8 +0,0 @@
1
- export function getQueueOptions(priority, axios, config = {}) {
2
- // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
3
- const signal = (config.signal ?? axios.defaults.signal);
4
- return {
5
- priority,
6
- signal,
7
- };
8
- }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,4 +1,5 @@
1
1
  import type { Currency, GigaspotOverclock, ResponseData } from '../types.ts';
2
+ export type CreateGigaspotOrdersRequestData = CreateGigaspotOrdersOrder[];
2
3
  export interface CreateGigaspotOrdersOrder {
3
4
  currency: Currency;
4
5
  image: string;
@@ -7,7 +8,6 @@ export interface CreateGigaspotOrdersOrder {
7
8
  oc: GigaspotOverclock[];
8
9
  env?: Record<string, string>;
9
10
  }
10
- export type CreateGigaspotOrdersRequestData = CreateGigaspotOrdersOrder[];
11
11
  export interface CreateGigaspotOrdersResponseData extends ResponseData {
12
12
  failed_to_oc_servers: number[];
13
13
  failed_to_rent_servers: number[];
@@ -1,4 +1,12 @@
1
1
  import type { Currency, OrderType, ResponseData } from '../types.ts';
2
+ export type CreateOrderRequestData = CreateOrderOnDemand | CreateOrderSpot;
3
+ export interface CreateOrderOnDemand extends CreateOrderBase {
4
+ type: 'on-demand';
5
+ }
6
+ export interface CreateOrderSpot extends CreateOrderBase {
7
+ type: 'spot';
8
+ spotprice: number;
9
+ }
2
10
  export interface CreateOrderBase {
3
11
  type: OrderType;
4
12
  currency: Currency;
@@ -15,12 +23,4 @@ export interface CreateOrderBase {
15
23
  remember_password?: boolean;
16
24
  dockerhub_auth?: string;
17
25
  }
18
- export interface CreateOrderOnDemand extends CreateOrderBase {
19
- type: 'on-demand';
20
- }
21
- export interface CreateOrderSpot extends CreateOrderBase {
22
- type: 'spot';
23
- spotprice: number;
24
- }
25
- export type CreateOrderRequestData = CreateOrderOnDemand | CreateOrderSpot;
26
26
  export type CreateOrderResponseData = ResponseData;
File without changes
@@ -1,10 +1,10 @@
1
1
  import type { GigaspotOverclock, ResponseData } from '../types.ts';
2
+ export type EditGigaspotOrdersRequestData = EditGigaspotOrdersOrder[];
2
3
  export interface EditGigaspotOrdersOrder {
3
4
  order_id: number;
4
5
  price: number;
5
6
  oc: GigaspotOverclock[];
6
7
  }
7
- export type EditGigaspotOrdersRequestData = EditGigaspotOrdersOrder[];
8
8
  export interface EditGigaspotOrdersResponseData extends ResponseData {
9
9
  success_to_update_ids: number[];
10
10
  failed_to_update_ids: number[];
File without changes
@@ -1,22 +1,13 @@
1
1
  import type { Currency, Pricing, ResponseData } from '../types.ts';
2
- export interface GetGigaspotSnapshotServerBid {
3
- owner: number;
4
- id: number;
5
- active: boolean;
6
- to_cache: boolean;
7
- cached: boolean;
8
- price: number;
9
- currency: Currency;
10
- pl: number;
2
+ export interface GetGigaspotResponseData extends GetGigaspotResponseDataBase {
3
+ snapshot: GetGigaspotSnapshot;
11
4
  }
12
- export interface GetGigaspotSnapshotServerGpu {
13
- pl: [number, number];
14
- mem_lock: [number, number];
15
- core_lock: [number, number];
16
- mem_offset: [number, number];
17
- core_offset: [number, number];
18
- model: string;
5
+ export interface GetGigaspotResponseDataBase extends ResponseData {
6
+ my_user_id: number;
7
+ v1_snapshot_url: string;
8
+ creation_fees: Pricing;
19
9
  }
10
+ export type GetGigaspotSnapshot = Record<string, GetGigaspotSnapshotServer>;
20
11
  export interface GetGigaspotSnapshotServer {
21
12
  bids: GetGigaspotSnapshotServerBid[];
22
13
  on_demand_rented: boolean;
@@ -35,12 +26,21 @@ export interface GetGigaspotSnapshotServer {
35
26
  min_bid: number;
36
27
  energy_price: number;
37
28
  }
38
- export type GetGigaspotSnapshot = Record<string, GetGigaspotSnapshotServer>;
39
- export interface GetGigaspotResponseDataBase extends ResponseData {
40
- my_user_id: number;
41
- v1_snapshot_url: string;
42
- creation_fees: Pricing;
29
+ export interface GetGigaspotSnapshotServerBid {
30
+ owner: number;
31
+ id: number;
32
+ active: boolean;
33
+ to_cache: boolean;
34
+ cached: boolean;
35
+ price: number;
36
+ currency: Currency;
37
+ pl: number;
43
38
  }
44
- export interface GetGigaspotResponseData extends GetGigaspotResponseDataBase {
45
- snapshot: GetGigaspotSnapshot;
39
+ export interface GetGigaspotSnapshotServerGpu {
40
+ pl: [number, number];
41
+ mem_lock: [number, number];
42
+ core_lock: [number, number];
43
+ mem_offset: [number, number];
44
+ core_offset: [number, number];
45
+ model: string;
46
46
  }
File without changes
@@ -1,4 +1,7 @@
1
1
  import type { Currency, Price, Rating, ResponseData, Specs } from '../types.ts';
2
+ export interface MarketplaceResponseData extends ResponseData {
3
+ servers: MarketplaceServer[];
4
+ }
2
5
  export interface MarketplaceServer {
3
6
  id: number;
4
7
  owner: number;
@@ -15,6 +18,3 @@ export interface MarketplaceServer {
15
18
  oc?: boolean;
16
19
  cuda_version: string;
17
20
  }
18
- export interface MarketplaceResponseData extends ResponseData {
19
- servers: MarketplaceServer[];
20
- }
File without changes
@@ -2,6 +2,10 @@ import type { Currency, Rating, ResponseData, Specs } from '../types.ts';
2
2
  export interface MyOrdersRequestParams {
3
3
  return_completed?: boolean;
4
4
  }
5
+ export interface MyOrdersResponseData extends ResponseData {
6
+ orders: MyOrdersOrder[];
7
+ limit: number;
8
+ }
5
9
  export interface MyOrdersOrder {
6
10
  id: number;
7
11
  creation_fee: number;
@@ -30,7 +34,3 @@ export interface MyOrdersOrder {
30
34
  spot?: boolean;
31
35
  expired?: boolean;
32
36
  }
33
- export interface MyOrdersResponseData extends ResponseData {
34
- orders: MyOrdersOrder[];
35
- limit: number;
36
- }
File without changes
@@ -1,4 +1,8 @@
1
1
  import type { Currency, Pricing, ResponseData, Specs, Visibility } from '../types.ts';
2
+ export interface MyServersResponseData extends ResponseData {
3
+ servers: MyServersServer[];
4
+ limit: number;
5
+ }
2
6
  export interface MyServersServer {
3
7
  name: string;
4
8
  connected: boolean;
@@ -10,7 +14,3 @@ export interface MyServersServer {
10
14
  init_token?: string;
11
15
  specs?: Specs;
12
16
  }
13
- export interface MyServersResponseData extends ResponseData {
14
- servers: MyServersServer[];
15
- limit: number;
16
- }
File without changes
@@ -1,16 +1,8 @@
1
1
  import type { ResponseData } from '../types.ts';
2
- export interface PohBalanceOffers {
3
- rented_amount: number;
4
- rented_on_marketplace_amount: number;
5
- rented_finished_amount: number;
6
- leased_amount: number;
7
- leased_finished_amount: number;
8
- }
9
- export interface PohBalance {
10
- total: number;
11
- free_amount: number;
12
- reward_amount: number;
13
- offers: PohBalanceOffers;
2
+ export interface PohBalanceResponseData extends ResponseData {
3
+ items: PohBalanceItem[];
4
+ balance: PohBalance;
5
+ count: number;
14
6
  }
15
7
  export interface PohBalanceItem {
16
8
  user: number;
@@ -24,8 +16,16 @@ export interface PohBalanceItem {
24
16
  balance: number;
25
17
  last_check: number;
26
18
  }
27
- export interface PohBalanceResponseData extends ResponseData {
28
- items: PohBalanceItem[];
29
- balance: PohBalance;
30
- count: number;
19
+ export interface PohBalance {
20
+ total: number;
21
+ free_amount: number;
22
+ reward_amount: number;
23
+ offers: PohBalanceOffers;
24
+ }
25
+ export interface PohBalanceOffers {
26
+ rented_amount: number;
27
+ rented_on_marketplace_amount: number;
28
+ rented_finished_amount: number;
29
+ leased_amount: number;
30
+ leased_finished_amount: number;
31
31
  }
File without changes
@@ -1,11 +1,9 @@
1
1
  import type { Pricing, ResponseData } from '../types.ts';
2
- export interface RenterFeesPohConfig {
3
- max_reduction_percent: number;
4
- max_poh_amount: number;
5
- }
6
- export interface RenterFeesCreationFees {
7
- on_demand: Pricing;
8
- spot: Pricing;
2
+ export interface RenterFeesResponseData extends ResponseData {
3
+ renter_fees: RenterFees;
4
+ poh_config: RenterFeesPohConfig;
5
+ creation_fees: RenterFeesCreationFees;
6
+ poh_balance: number;
9
7
  }
10
8
  export interface RenterFees {
11
9
  on_demand: RenterFee;
@@ -14,9 +12,11 @@ export interface RenterFees {
14
12
  export interface RenterFee {
15
13
  base: Pricing;
16
14
  }
17
- export interface RenterFeesResponseData extends ResponseData {
18
- renter_fees: RenterFees;
19
- poh_config: RenterFeesPohConfig;
20
- creation_fees: RenterFeesCreationFees;
21
- poh_balance: number;
15
+ export interface RenterFeesPohConfig {
16
+ max_reduction_percent: number;
17
+ max_poh_amount: number;
18
+ }
19
+ export interface RenterFeesCreationFees {
20
+ on_demand: Pricing;
21
+ spot: Pricing;
22
22
  }
File without changes
@@ -2,11 +2,9 @@ import type { AutoPrice, Currency, Pricing, PricingInOriginalUsd, ResponseData,
2
2
  export interface ServerConfigRequestData {
3
3
  server_name: string;
4
4
  }
5
- export interface ServerConfigBackgroundJob {
6
- times_updated: number;
7
- image: string;
8
- command: string;
9
- env: Record<string, string>;
5
+ export interface ServerConfigResponseData extends ResponseData {
6
+ config: ServerConfig;
7
+ creation_completed: boolean;
10
8
  }
11
9
  export interface ServerConfig {
12
10
  name: string;
@@ -25,7 +23,9 @@ export interface ServerConfig {
25
23
  autoprice: AutoPrice;
26
24
  usd_pricing: PricingInOriginalUsd;
27
25
  }
28
- export interface ServerConfigResponseData extends ResponseData {
29
- config: ServerConfig;
30
- creation_completed: boolean;
26
+ export interface ServerConfigBackgroundJob {
27
+ times_updated: number;
28
+ image: string;
29
+ command: string;
30
+ env: Record<string, string>;
31
31
  }
File without changes
File without changes
File without changes
@@ -3,6 +3,7 @@ export interface SetSpotPriceRequestData {
3
3
  order_id: number;
4
4
  desired_price: number;
5
5
  }
6
+ export type SetSpotPriceResponseData = SetSpotPriceMaxStep | SetSpotPriceTimeToLowering | SetSpotPriceNormal;
6
7
  export interface SetSpotPriceMaxStep extends ResponseData {
7
8
  error: 'exceeded_max_step';
8
9
  max_step: number;
@@ -12,4 +13,3 @@ export interface SetSpotPriceTimeToLowering extends ResponseData {
12
13
  time_to_lowering: number;
13
14
  }
14
15
  export type SetSpotPriceNormal = Omit<ResponseData, 'error'>;
15
- export type SetSpotPriceResponseData = SetSpotPriceMaxStep | SetSpotPriceTimeToLowering | SetSpotPriceNormal;
File without changes
@@ -2,6 +2,15 @@ import type { Currency, Pricing, ResponseData, Visibility } from '../types.ts';
2
2
  export interface SpotMarketplaceRequestParams {
3
3
  market: number;
4
4
  }
5
+ export interface SpotMarketplaceResponseData extends ResponseData {
6
+ market: SpotMarketplaceMarket;
7
+ exists: boolean;
8
+ }
9
+ export interface SpotMarketplaceMarket {
10
+ currency_rates_in_usd: Pricing;
11
+ offers: SpotMarketplaceMarketOffer[];
12
+ server: SpotMarketplaceMarketServer;
13
+ }
5
14
  export interface SpotMarketplaceMarketOffer {
6
15
  offer_id: number;
7
16
  bid: number;
@@ -15,12 +24,3 @@ export interface SpotMarketplaceMarketServer {
15
24
  online: boolean;
16
25
  visibility: Visibility;
17
26
  }
18
- export interface SpotMarketplaceMarket {
19
- currency_rates_in_usd: Pricing;
20
- offers: SpotMarketplaceMarketOffer[];
21
- server: SpotMarketplaceMarketServer;
22
- }
23
- export interface SpotMarketplaceResponseData extends ResponseData {
24
- market: SpotMarketplaceMarket;
25
- exists: boolean;
26
- }
File without changes