import { ReplicationRegions, type VideoLibrary } from '../models/streamVideoLibrary/index.js'; import { type VideolibraryItemRequestBuilder } from './item/index.js'; import { type LanguagesRequestBuilder } from './languages/index.js'; import { type ResetApiKeyRequestBuilder } from './resetApiKey/index.js'; import { type AdditionalDataHolder, type BaseRequestBuilder, type KeysToExcludeForNavigationMetadata, type NavigationMetadata, type Parsable, type ParseNode, type RequestConfiguration, type RequestInformation, type RequestsMetadata, type SerializationWriter } from '@microsoft/kiota-abstractions'; /** * Creates a new instance of the appropriate class based on discriminator value * @param parseNode The parse node to use to read the discriminator value and create the object * @returns {VideolibraryGetResponse} */ export declare function createVideolibraryGetResponseFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record void>); /** * Creates a new instance of the appropriate class based on discriminator value * @param parseNode The parse node to use to read the discriminator value and create the object * @returns {VideolibraryPostRequestBody} */ export declare function createVideolibraryPostRequestBodyFromDiscriminatorValue(parseNode: ParseNode | undefined): ((instance?: Parsable) => Record void>); /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoVideolibraryGetResponse(videolibraryGetResponse?: Partial | undefined): Record void>; /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoVideolibraryPostRequestBody(videolibraryPostRequestBody?: Partial | undefined): Record void>; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializeVideolibraryGetResponse(writer: SerializationWriter, videolibraryGetResponse?: Partial | undefined | null): void; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializeVideolibraryPostRequestBody(writer: SerializationWriter, videolibraryPostRequestBody?: Partial | undefined | null): void; export interface VideolibraryGetResponse extends AdditionalDataHolder, Parsable { /** * Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. */ additionalData?: Record; /** * The CurrentPage property */ currentPage?: number | null; /** * The HasMoreItems property */ hasMoreItems?: boolean | null; /** * The Items property */ items?: VideoLibrary[] | null; /** * The TotalItems property */ totalItems?: number | null; } export interface VideolibraryPostRequestBody extends AdditionalDataHolder, Parsable { /** * Stores additional data not described in the OpenAPI description found when deserializing. Can be used for serialization as well. */ additionalData?: Record; /** * The name of the Video Library. */ name?: string | null; /** * The geo-replication regions of the underlying storage zone */ replicationRegions?: ReplicationRegions[] | null; } /** * Builds and executes requests for operations under /videolibrary */ export interface VideolibraryRequestBuilder extends BaseRequestBuilder { /** * The languages property */ get languages(): LanguagesRequestBuilder; /** * The resetApiKey property */ get resetApiKey(): ResetApiKeyRequestBuilder; /** * Gets an item from the BunnyApiClient.videolibrary.item collection * @param id The ID of the Video Library that will be returned * @returns {VideolibraryItemRequestBuilder} */ byId(id: number): VideolibraryItemRequestBuilder; /** * [ListVideoLibraries API Docs](https://docs.bunny.net/reference/videolibrarypublic_index) * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {Promise} */ get(requestConfiguration?: RequestConfiguration | undefined): Promise; /** * [AddVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_add) * @param body The request body * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {Promise} */ post(body: VideolibraryPostRequestBody, requestConfiguration?: RequestConfiguration | undefined): Promise; /** * [ListVideoLibraries API Docs](https://docs.bunny.net/reference/videolibrarypublic_index) * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {RequestInformation} */ toGetRequestInformation(requestConfiguration?: RequestConfiguration | undefined): RequestInformation; /** * [AddVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_add) * @param body The request body * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {RequestInformation} */ toPostRequestInformation(body: VideolibraryPostRequestBody, requestConfiguration?: RequestConfiguration | undefined): RequestInformation; } /** * [ListVideoLibraries API Docs](https://docs.bunny.net/reference/videolibrarypublic_index) */ export interface VideolibraryRequestBuilderGetQueryParameters { includeAccessKey?: boolean; page?: number; perPage?: number; /** * The search term that will be used to filter the results */ search?: string; } /** * Uri template for the request builder. */ export declare const VideolibraryRequestBuilderUriTemplate = "{+baseurl}/videolibrary?includeAccessKey={includeAccessKey}&page={page}&perPage={perPage}&search={search}"; /** * Metadata for all the navigation properties in the request builder. */ export declare const VideolibraryRequestBuilderNavigationMetadata: Record, NavigationMetadata>; /** * Metadata for all the requests in the request builder. */ export declare const VideolibraryRequestBuilderRequestsMetadata: RequestsMetadata;