balena-sdk
Version:
The Balena JavaScript SDK
46 lines (45 loc) • 1.42 kB
TypeScript
import type { Params } from 'pinejs-client-core';
import { PinejsClientCore } from 'pinejs-client-core';
import type BalenaRequest from 'balena-request';
import type { BalenaRequestOptions } from 'balena-request';
import type { BalenaModel } from './types/models';
type BalenaRequestSend = ReturnType<(typeof BalenaRequest)['getRequest']>['send'];
interface BackendParams {
apiUrl: string;
apiVersion: string;
apiKey?: string;
request: {
send: BalenaRequestSend;
};
auth: import('balena-auth').default;
}
/**
* @class
* @classdesc A PineJS Client subclass to communicate with balena.
* @private
*
* @description
* This subclass makes use of the [balena-request](https://github.com/balena-io-modules/balena-request) project.
*/
export declare class PinejsClient extends PinejsClientCore<BalenaModel> {
backendParams: BackendParams;
API_URL: string;
API_VERSION: string;
constructor(params: Params, backendParams: BackendParams);
/**
* @summary Perform a network request to balena.
* @method
* @private
*
* @param {Object} options - request options
* @returns {Promise<any>} response body
*
* @todo Implement caching support.
*/
_request(options: BalenaRequestOptions & {
method: string;
anonymous?: unknown;
}): Promise<any>;
}
export type PineClient = PinejsClientCore<BalenaModel>;
export {};