/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { channelEpisodesCreate } from "../funcs/channelEpisodesCreate.js"; import { channelEpisodesDeleteChannelEpisodesChannelEpisodeHashedId } from "../funcs/channelEpisodesDeleteChannelEpisodesChannelEpisodeHashedId.js"; import { channelEpisodesGet } from "../funcs/channelEpisodesGet.js"; import { channelEpisodesList } from "../funcs/channelEpisodesList.js"; import { channelEpisodesPutChannelEpisodesChannelEpisodeHashedId } from "../funcs/channelEpisodesPutChannelEpisodesChannelEpisodeHashedId.js"; import { channelEpisodesPutChannelEpisodesChannelEpisodeHashedIdPublish } from "../funcs/channelEpisodesPutChannelEpisodesChannelEpisodeHashedIdPublish.js"; import { channelEpisodesPutChannelEpisodesChannelEpisodeHashedIdUnpublish } from "../funcs/channelEpisodesPutChannelEpisodesChannelEpisodeHashedIdUnpublish.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; export class ChannelEpisodes extends ClientSDK { /** * Show Channel Episode * * @remarks * Returns the Channel Episode associated with a channel hashed id * and channel episode hashed id. * * ## Requires api token with one of the following permissions * ``` * Read all folder and media data * ``` */ async get( request: operations.GetChannelsChannelHashedIdChannelEpisodesChannelEpisodeIdRequest, options?: RequestOptions, ): Promise< operations.GetChannelsChannelHashedIdChannelEpisodesChannelEpisodeIdResponse > { return unwrapAsync(channelEpisodesGet( this, request, options, )); } /** * Create Channel Episode * * @remarks * Creates a new channel episode in a channel. * * ## Requires api token with one of the following permissions * ``` * Read, update & delete anything * ``` */ async create( request: operations.PostChannelsChannelHashedIdChannelEpisodesRequest, options?: RequestOptions, ): Promise { return unwrapAsync(channelEpisodesCreate( this, request, options, )); } /** * List Channel Episodes * * @remarks * Lists Channel Episodes belonging to an account. This endpoint can also be used to * do a batch fetch based off of the hashed id. * * ## Requires api token with one of the following permissions * ``` * Read all folder and media data * ``` */ async list( request?: operations.GetChannelEpisodesRequest | undefined, options?: RequestOptions, ): Promise> { return unwrapAsync(channelEpisodesList( this, request, options, )); } /** * Update Channel Episode * * @remarks * Updates an existing channel episode in a channel. * ## Requires api token with one of the following permissions * ``` * Read, update & delete anything * ``` */ async putChannelEpisodesChannelEpisodeHashedId( request: operations.PutChannelEpisodesChannelEpisodeHashedIdRequest, options?: RequestOptions, ): Promise { return unwrapAsync(channelEpisodesPutChannelEpisodesChannelEpisodeHashedId( this, request, options, )); } /** * Delete Channel Episode * * @remarks * Deletes an existing channel episode in a channel. * * ## Requires api token with one of the following permissions * ``` * Read, update & delete anything * ``` */ async deleteChannelEpisodesChannelEpisodeHashedId( request: operations.DeleteChannelEpisodesChannelEpisodeHashedIdRequest, options?: RequestOptions, ): Promise { return unwrapAsync( channelEpisodesDeleteChannelEpisodesChannelEpisodeHashedId( this, request, options, ), ); } /** * Publish Channel Episode * * @remarks * Publishes an existing channel episode in a channel. * ## Requires api token with one of the following permissions * ``` * Read, update & delete anything * ``` */ async putChannelEpisodesChannelEpisodeHashedIdPublish( request: operations.PutChannelEpisodesChannelEpisodeHashedIdPublishRequest, options?: RequestOptions, ): Promise< operations.PutChannelEpisodesChannelEpisodeHashedIdPublishResponse > { return unwrapAsync( channelEpisodesPutChannelEpisodesChannelEpisodeHashedIdPublish( this, request, options, ), ); } /** * Un-publish Channel Episode * * @remarks * Un-publishes an existing channel episode in a channel. * ## Requires api token with one of the following permissions * ``` * Read, update & delete anything * ``` */ async putChannelEpisodesChannelEpisodeHashedIdUnpublish( request: operations.PutChannelEpisodesChannelEpisodeHashedIdUnpublishRequest, options?: RequestOptions, ): Promise< operations.PutChannelEpisodesChannelEpisodeHashedIdUnpublishResponse > { return unwrapAsync( channelEpisodesPutChannelEpisodesChannelEpisodeHashedIdUnpublish( this, request, options, ), ); } }