UNPKG

balena-sdk

Version:
57 lines (56 loc) 3.21 kB
import type { ODataOptionsWithoutCount, OptionsToResponse } from 'pinejs-client-core'; import type { InjectedDependenciesParam, InjectedOptionsParam, Release, ReleaseAsset } from '..'; import type { ReleaseRawVersionApplicationPair } from './release'; type WriteReleaseAssetParams = Omit<ReleaseAsset['Write'], 'asset'> & { asset: File | string; }; type UploadProgressInfo = { total: number; uploaded: number; }; type UploadParams = { chunkSize?: number | undefined; parallelUploads?: number | undefined; overwrite?: boolean | undefined; onUploadProgress?: (progress: UploadProgressInfo) => void | Promise<void>; }; type ReleaseAssetId = ReleaseAsset['Read']['id'] | { asset_key: ReleaseAsset['Read']['asset_key']; release: string | number | ReleaseRawVersionApplicationPair; }; declare const getReleaseAssetModel: (deps: InjectedDependenciesParam, opts: InjectedOptionsParam, getRelease: <T extends ODataOptionsWithoutCount<Release["Read"]>>(commitOrIdOrRawVersion: string | number | ReleaseRawVersionApplicationPair, options?: T) => Promise<OptionsToResponse<Release["Read"], T, undefined>[number]>) => { getAllByRelease<T extends ODataOptionsWithoutCount<ReleaseAsset["Read"]>>(commitOrIdOrRawVersion: string | number | ReleaseRawVersionApplicationPair, options?: T): Promise<OptionsToResponse<{ release: { __id: Release["Read"]["id"]; } | [Release["Read"]]; asset_key: import("@balena/sbvr-types").Types["Short Text"]["Read"]; id: import("@balena/sbvr-types").Types["Integer"]["Read"]; asset: import("@balena/sbvr-types").Types["WebResource"]["Read"] | null; }, import("../util").MergePineOptions<import("../util").AliasResourceRead, { $orderby: { id: "asc"; }; }, T>, undefined>>; get<T extends ODataOptionsWithoutCount<ReleaseAsset["Read"]>>(id: ReleaseAssetId, options?: T): Promise<NonNullable<OptionsToResponse<{ release: { __id: Release["Read"]["id"]; } | [Release["Read"]]; asset_key: import("@balena/sbvr-types").Types["Short Text"]["Read"]; id: import("@balena/sbvr-types").Types["Integer"]["Read"]; asset: import("@balena/sbvr-types").Types["WebResource"]["Read"] | null; }, T & {}, number | { release: number; asset_key: ReleaseAsset["Read"]["asset_key"]; }>>>; download(id: ReleaseAssetId): Promise<import("balena-request").BalenaRequestStreamResult>; upload(uploadParams: WriteReleaseAssetParams, { chunkSize, parallelUploads, overwrite, onUploadProgress, }?: UploadParams): Promise<import("pinejs-client-core/node_modules/@balena/abstract-sql-to-typescript", { with: { "resolution-mode": "import" } }).PickDeferred<{ release: { __id: Release["Read"]["id"]; } | [Release["Read"]]; asset_key: import("@balena/sbvr-types").Types["Short Text"]["Read"]; id: import("@balena/sbvr-types").Types["Integer"]["Read"]; asset: import("@balena/sbvr-types").Types["WebResource"]["Read"] | null; }, "release" | "id" | "asset_key" | "asset">>; remove(id: ReleaseAssetId): Promise<void>; }; export default getReleaseAssetModel;