import { ReplicationRegions, type VideoLibrary } from '../../models/streamVideoLibrary/index.js'; import { type AddAllowedReferrerRequestBuilder } from './addAllowedReferrer/index.js'; import { type AddBlockedReferrerRequestBuilder } from './addBlockedReferrer/index.js'; import { type RemoveAllowedReferrerRequestBuilder } from './removeAllowedReferrer/index.js'; import { type RemoveBlockedReferrerRequestBuilder } from './removeBlockedReferrer/index.js'; import { type ResetApiKeyRequestBuilder } from './resetApiKey/index.js'; import { type WatermarkRequestBuilder } from './watermark/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 {VideolibraryPostRequestBody_AppleFairPlayDrm} */ export declare function createVideolibraryPostRequestBody_AppleFairPlayDrmFromDiscriminatorValue(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_GoogleWidevineDrm} */ export declare function createVideolibraryPostRequestBody_GoogleWidevineDrmFromDiscriminatorValue(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 deserializeIntoVideolibraryPostRequestBody(videolibraryPostRequestBody?: Partial | undefined): Record void>; /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoVideolibraryPostRequestBody_AppleFairPlayDrm(videolibraryPostRequestBody_AppleFairPlayDrm?: Partial | undefined): Record void>; /** * The deserialization information for the current model * @returns {Record void>} */ export declare function deserializeIntoVideolibraryPostRequestBody_GoogleWidevineDrm(videolibraryPostRequestBody_GoogleWidevineDrm?: Partial | undefined): Record 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; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializeVideolibraryPostRequestBody_AppleFairPlayDrm(writer: SerializationWriter, videolibraryPostRequestBody_AppleFairPlayDrm?: Partial | undefined | null): void; /** * Serializes information the current object * @param writer Serialization writer to use to serialize this model */ export declare function serializeVideolibraryPostRequestBody_GoogleWidevineDrm(writer: SerializationWriter, videolibraryPostRequestBody_GoogleWidevineDrm?: Partial | undefined | null): void; /** * Builds and executes requests for operations under /videolibrary/{id} */ export interface VideolibraryItemRequestBuilder extends BaseRequestBuilder { /** * The addAllowedReferrer property */ get addAllowedReferrer(): AddAllowedReferrerRequestBuilder; /** * The addBlockedReferrer property */ get addBlockedReferrer(): AddBlockedReferrerRequestBuilder; /** * The removeAllowedReferrer property */ get removeAllowedReferrer(): RemoveAllowedReferrerRequestBuilder; /** * The removeBlockedReferrer property */ get removeBlockedReferrer(): RemoveBlockedReferrerRequestBuilder; /** * The resetApiKey property */ get resetApiKey(): ResetApiKeyRequestBuilder; /** * The watermark property */ get watermark(): WatermarkRequestBuilder; /** * [DeleteVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_delete) * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. */ delete(requestConfiguration?: RequestConfiguration | undefined): Promise; /** * [GetVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_index2) * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {Promise} */ get(requestConfiguration?: RequestConfiguration | undefined): Promise; /** * [UpdateVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_update) * @param body The template for adding optional properties. * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {Promise} */ post(body: VideolibraryPostRequestBody, requestConfiguration?: RequestConfiguration | undefined): Promise; /** * [DeleteVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_delete) * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {RequestInformation} */ toDeleteRequestInformation(requestConfiguration?: RequestConfiguration | undefined): RequestInformation; /** * [GetVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_index2) * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {RequestInformation} */ toGetRequestInformation(requestConfiguration?: RequestConfiguration | undefined): RequestInformation; /** * [UpdateVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_update) * @param body The template for adding optional properties. * @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. * @returns {RequestInformation} */ toPostRequestInformation(body: VideolibraryPostRequestBody, requestConfiguration?: RequestConfiguration | undefined): RequestInformation; } /** * [GetVideoLibrary API Docs](https://docs.bunny.net/reference/videolibrarypublic_index2) */ export interface VideolibraryItemRequestBuilderGetQueryParameters { includeAccessKey?: boolean; } /** * The template for adding optional properties. */ 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; /** * Determines direct play URLs are enabled for the library */ allowDirectPlay?: boolean | null; /** * Determines if the Early-Play feature is enabled */ allowEarlyPlay?: boolean | null; /** * The list of allowed referrer domains allowed to access the library */ allowedReferrers?: string[] | null; /** * The API access key for the library. Only added when the includeAccessKey parameter is set. */ apiAccessKey?: string | null; /** * The API key used for authenticating with the video library */ apiKey?: string | null; /** * The AppleFairPlayDrm property */ appleFairPlayDrm?: VideolibraryPostRequestBody_AppleFairPlayDrm | null; /** * The bitrate used for encoding 1080p videos */ bitrate1080p?: number | null; /** * The bitrate used for encoding 1440p videos */ bitrate1440p?: number | null; /** * The bitrate used for encoding 2160p videos */ bitrate2160p?: number | null; /** * The bitrate used for encoding 240p videos */ bitrate240p?: number | null; /** * The bitrate used for encoding 360p videos */ bitrate360p?: number | null; /** * The bitrate used for encoding 480p videos */ bitrate480p?: number | null; /** * The bitrate used for encoding 720p videos */ bitrate720p?: number | null; /** * The list of blocked referrer domains blocked from accessing the library */ blockedReferrers?: string[] | null; /** * Determines if the requests without a referrer are blocked */ blockNoneReferrer?: boolean | null; /** * The captions display background color */ captionsBackground?: string | null; /** * The captions display font color */ captionsFontColor?: string | null; /** * The captions display font size */ captionsFontSize?: number | null; /** * The list of controls on the video player. */ controls?: string | null; /** * The custom HTMl that is added into the head of the HTML player. */ customHTML?: string | null; /** * The date when the video library was created */ dateCreated?: Date | null; /** * The DrmBasePriceOverride property */ drmBasePriceOverride?: number | null; /** * The DrmCostPerLicenseOverride property */ drmCostPerLicenseOverride?: number | null; /** * The DrmVersion property */ drmVersion?: number | null; /** * Determines if content tagging should be enabled for this library. */ enableContentTagging?: boolean | null; /** * The comma separated list of enabled resolutions */ enabledResolutions?: string | null; /** * Determines if the MediaCage basic DRM is enabled */ enableDRM?: boolean | null; /** * Determines if the MP4 fallback feature is enabled */ enableMP4Fallback?: boolean | null; /** * The EnableMultiAudioTrackSupport property */ enableMultiAudioTrackSupport?: boolean | null; /** * Determines if the automatic audio transcribing is currently enabled for this zone. */ enableTranscribing?: boolean | null; /** * Determines if automatic transcribing description generation is currently enabled. */ enableTranscribingDescriptionGeneration?: boolean | null; /** * Determines if automatic transcribing title generation is currently enabled. */ enableTranscribingTitleGeneration?: boolean | null; /** * The EncodingTier property */ encodingTier?: number | null; /** * The captions font family. */ fontFamily?: string | null; /** * The GoogleWidevineDrm property */ googleWidevineDrm?: VideolibraryPostRequestBody_GoogleWidevineDrm | null; /** * Determines if the video library has a watermark configured */ hasWatermark?: boolean | null; /** * The Id property */ id?: number | null; /** * The JitEncodingEnabled property */ jitEncodingEnabled?: boolean | null; /** * Determines if the original video files should be stored after encoding */ keepOriginalFiles?: boolean | null; /** * The MonthlyChargesEnterpriseDrm property */ monthlyChargesEnterpriseDrm?: number | null; /** * The MonthlyChargesPremiumEncoding property */ monthlyChargesPremiumEncoding?: number | null; /** * The MonthlyChargesTranscribing property */ monthlyChargesTranscribing?: number | null; /** * The name of the Video Library. */ name?: string | null; /** * The OutputCodecs property */ outputCodecs?: string | null; /** * The key color of the player. */ playerKeyColor?: string | null; /** * Determines if the player token authentication is enabled */ playerTokenAuthenticationEnabled?: boolean | null; /** * The PremiumEncodingPriceOverride property */ premiumEncodingPriceOverride?: number | null; /** * The ID of the connected underlying pull zone */ pullZoneId?: number | null; /** * The PullZoneType property */ pullZoneType?: number | null; /** * The read-only API key used for authenticating with the video library */ readOnlyApiKey?: string | null; /** * The list of languages that the captions will be automatically transcribed to. */ rememberPlayerPosition?: boolean | null; /** * The geo-replication regions of the underlying storage zone */ replicationRegions?: ReplicationRegions[] | null; /** * Determines if the video watch heatmap should be displayed in the player. */ showHeatmap?: boolean | null; /** * The total amount of storage used by the library */ storageUsage?: number | null; /** * The ID of the connected underlying storage zone */ storageZoneId?: number | null; /** * The amount of traffic usage this month */ trafficUsage?: number | null; /** * The TranscribingCaptionLanguages property */ transcribingCaptionLanguages?: string[] | null; /** * The TranscribingPriceOverride property */ transcribingPriceOverride?: number | null; /** * The UI language of the player */ uILanguage?: string | null; /** * The UseSeparateAudioStream property */ useSeparateAudioStream?: boolean | null; /** * The URL of the VAST tag endpoint for advertising configuration */ vastTagUrl?: string | null; /** * The vi.ai publisher id for advertising configuration */ viAiPublisherId?: string | null; /** * The number of videos in the video library */ videoCount?: number | null; /** * The height of the watermark (in %) */ watermarkHeight?: number | null; /** * The left offset of the watermark position (in %) */ watermarkPositionLeft?: number | null; /** * The top offset of the watermark position (in %) */ watermarkPositionTop?: number | null; /** * The WatermarkVersion property */ watermarkVersion?: number | null; /** * The width of the watermark (in %) */ watermarkWidth?: number | null; /** * The webhook URL of the video library */ webhookUrl?: string | null; } export interface VideolibraryPostRequestBody_AppleFairPlayDrm 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 CertificateExpirationDate property */ certificateExpirationDate?: Date | null; /** * The CertificateId property */ certificateId?: number | null; /** * The Enabled property */ enabled?: boolean | null; /** * The Provider property */ provider?: string | null; } export interface VideolibraryPostRequestBody_GoogleWidevineDrm 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 CertificateExpirationDate property */ certificateExpirationDate?: Date | null; /** * The CertificateId property */ certificateId?: number | null; /** * The Enabled property */ enabled?: boolean | null; /** * The MinClientSecurityLevel property */ minClientSecurityLevel?: number | null; /** * The Provider property */ provider?: string | null; /** * The SdOnlyForL3 property */ sdOnlyForL3?: boolean | null; } /** * Uri template for the request builder. */ export declare const VideolibraryItemRequestBuilderUriTemplate = "{+baseurl}/videolibrary/{id}?includeAccessKey={includeAccessKey}"; /** * Metadata for all the navigation properties in the request builder. */ export declare const VideolibraryItemRequestBuilderNavigationMetadata: Record, NavigationMetadata>; /** * Metadata for all the requests in the request builder. */ export declare const VideolibraryItemRequestBuilderRequestsMetadata: RequestsMetadata;