import { APIResource } from "../../resource.js"; import * as Core from "../../core.js"; import * as AudioTracksAPI from "./audio-tracks.js"; import { Audio, AudioSinglePage, AudioTrackCopyParams, AudioTrackDeleteParams, AudioTrackDeleteResponse, AudioTrackEditParams, AudioTrackGetParams, AudioTracks } from "./audio-tracks.js"; import * as ClipAPI from "./clip.js"; import { Clip, ClipCreateParams, ClipResource } from "./clip.js"; import * as CopyAPI from "./copy.js"; import { Copy, CopyCreateParams } from "./copy.js"; import * as DirectUploadAPI from "./direct-upload.js"; import { DirectUpload, DirectUploadCreateParams, DirectUploadCreateResponse } from "./direct-upload.js"; import * as DownloadsAPI from "./downloads.js"; import { DownloadCreateParams, DownloadCreateResponse, DownloadDeleteParams, DownloadDeleteResponse, DownloadGetParams, DownloadGetResponse, Downloads } from "./downloads.js"; import * as EmbedAPI from "./embed.js"; import { Embed, EmbedGetParams, EmbedGetResponse } from "./embed.js"; import * as KeysAPI from "./keys.js"; import { KeyCreateParams, KeyDeleteParams, KeyDeleteResponse, KeyGetParams, KeyGetResponse, KeyGetResponsesSinglePage, Keys } from "./keys.js"; import * as TokenAPI from "./token.js"; import { Token, TokenCreateParams, TokenCreateResponse } from "./token.js"; import * as VideosAPI from "./videos.js"; import { VideoStorageUsageParams, VideoStorageUsageResponse, Videos } from "./videos.js"; import * as WatermarksAPI from "./watermarks.js"; import { Watermark, WatermarkCreateParams, WatermarkDeleteParams, WatermarkDeleteResponse, WatermarkGetParams, WatermarkListParams, Watermarks, WatermarksSinglePage } from "./watermarks.js"; import * as WebhooksAPI from "./webhooks.js"; import { WebhookDeleteParams, WebhookDeleteResponse, WebhookGetParams, WebhookGetResponse, WebhookUpdateParams, WebhookUpdateResponse, Webhooks } from "./webhooks.js"; import * as CaptionsAPI from "./captions/captions.js"; import { Caption, CaptionGetParams, Captions, CaptionsSinglePage } from "./captions/captions.js"; import * as LiveInputsAPI from "./live-inputs/live-inputs.js"; import { LiveInput, LiveInputCreateParams, LiveInputDeleteParams, LiveInputGetParams, LiveInputListParams, LiveInputListResponse, LiveInputUpdateParams, LiveInputs } from "./live-inputs/live-inputs.js"; import { SinglePage } from "../../pagination.js"; export declare class Stream extends APIResource { audioTracks: AudioTracksAPI.AudioTracks; videos: VideosAPI.Videos; clip: ClipAPI.ClipResource; copy: CopyAPI.Copy; directUpload: DirectUploadAPI.DirectUpload; keys: KeysAPI.Keys; liveInputs: LiveInputsAPI.LiveInputs; watermarks: WatermarksAPI.Watermarks; webhooks: WebhooksAPI.Webhooks; captions: CaptionsAPI.Captions; downloads: DownloadsAPI.Downloads; embed: EmbedAPI.Embed; token: TokenAPI.Token; /** * Initiates a video upload using the TUS protocol. On success, the server responds * with a status code 201 (created) and includes a `location` header to indicate * where the content should be uploaded. Refer to https://tus.io for protocol * details. * * @example * ```ts * await client.stream.create({ * account_id: '023e105f4ecef8ad9ca31a8372d0c353', * body: {}, * 'Tus-Resumable': '1.0.0', * 'Upload-Length': 0, * }); * ``` */ create(params: StreamCreateParams, options?: Core.RequestOptions): Core.APIPromise; /** * Lists up to 1000 videos from a single request. For a specific range, refer to * the optional parameters. * * @example * ```ts * // Automatically fetches more pages as needed. * for await (const video of client.stream.list({ * account_id: '023e105f4ecef8ad9ca31a8372d0c353', * })) { * // ... * } * ``` */ list(params: StreamListParams, options?: Core.RequestOptions): Core.PagePromise; /** * Deletes a video and its copies from Cloudflare Stream. * * @example * ```ts * await client.stream.delete( * 'ea95132c15732412d22c1476fa83f27a', * { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ delete(identifier: string, params: StreamDeleteParams, options?: Core.RequestOptions): Core.APIPromise; /** * Edit details for a single video. * * @example * ```ts * const video = await client.stream.edit( * 'ea95132c15732412d22c1476fa83f27a', * { account_id: '023e105f4ecef8ad9ca31a8372d0c353' }, * ); * ``` */ edit(identifier: string, params: StreamEditParams, options?: Core.RequestOptions): Core.APIPromise