1 Star 0 Fork 4K

Feng Lin/interface_sdk-js

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
@ohos.PiPWindow.d.ts 30.94 KB
一键复制 编辑 原始数据 按行查看 历史
Ning Yuanfeng 提交于 2024-08-31 10:12 +08:00 . 修改import
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058
/*
* Copyright (c) 2023 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @file
* @kit ArkUI
*/
import type BaseContext from './application/BaseContext';
import type { Callback } from './@ohos.base';
import { NodeController } from './arkui/NodeController';
import { typeNode } from './arkui/FrameNode';
/**
* Picture In Picture Window Manager
*
* @namespace PiPWindow
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Picture In Picture Window Manager
*
* @namespace PiPWindow
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
declare namespace PiPWindow {
/**
* If picture-in-picture enabled in current OS.
*
* @returns { boolean } true if PictureInPicture enabled, otherwise false
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* If picture-in-picture enabled in current OS.
*
* @returns { boolean } true if PictureInPicture enabled, otherwise false
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
function isPiPEnabled(): boolean;
/**
* Create picture-in-picture controller
*
* @param { PiPConfiguration } config - Params for picture-in-picture controller creation. The config must be valid,
* the context and componentController in config should not be null. If templateType is specified, make sure
* it's type of PiPTemplateType. If controlGroups is specified, make sure it correspond to the templateType.
* @returns { Promise<PiPController> } - The promise returned by the function
* @throws { BusinessError } 401 - Params error. Possible causes: 1. Mandatory parameters are left unspecified.
* 2. Incorrect parameter types.
* 3. Parameter verification failed
* @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities.
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Create picture-in-picture controller
*
* @param { PiPConfiguration } config - Params for picture-in-picture controller creation. The config must be valid,
* the context and componentController in config should not be null. If templateType is specified, make sure
* it's type of PiPTemplateType. If controlGroups is specified, make sure it correspond to the templateType.
* @returns { Promise<PiPController> } - The promise returned by the function
* @throws { BusinessError } 401 - Params error. Possible causes: 1. Mandatory parameters are left unspecified.
* 2. Incorrect parameter types.
* 3. Parameter verification failed
* @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
function create(config: PiPConfiguration): Promise<PiPController>;
/**
* Create picture-in-picture controller
*
* @param { PiPConfiguration } config - Params for picture-in-picture controller creation. The config must be valid,
* the context and componentController in config should not be null. If templateType is specified, make sure
* it's type of PiPTemplateType. If controlGroups is specified, make sure it correspond to the templateType.
* @param { typeNode.XComponent } contentNode - Params for picture-in-picture controller creation.
* Indicates the node which display the content of pip window.
* @returns { Promise<PiPController> } - The promise returned by the function
* @throws { BusinessError } 401 - Params error. Possible causes: 1. Mandatory parameters are left unspecified.
* 2. Incorrect parameter types.
* 3. Parameter verification failed.
* @throws { BusinessError } 801 - Capability not supported. Failed to call the API due to limited device capabilities.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
function create(config: PiPConfiguration, contentNode: typeNode.XComponent): Promise<PiPController>;
/**
* PiPConfiguration
*
* @interface PiPConfiguration
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* PiPConfiguration
*
* @interface PiPConfiguration
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
interface PiPConfiguration {
/**
* Indicates window context.
*
* @type { BaseContext }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Indicates window context.
*
* @type { BaseContext }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
context: BaseContext;
/**
* Indicates the origin XComponentController.
*
* @type { XComponentController }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Indicates the origin XComponentController.
*
* @type { XComponentController }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
componentController: XComponentController;
/**
* Indicates navigation ID.
*
* @type { ?string }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Indicates navigation ID.
*
* @type { ?string }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
navigationId?: string;
/**
* Picture-in-picture template type.
*
* @type { ?PiPTemplateType }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Picture-in-picture template type.
*
* @type { ?PiPTemplateType }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
templateType?: PiPTemplateType;
/**
* Describes the width of content to be displayed in PiP window. For adjusting PiP window aspect ratio.
*
* @type { ?number }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Describes the width of content to be displayed in PiP window. For adjusting PiP window aspect ratio.
*
* @type { ?number }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
contentWidth?: number;
/**
* Describes the height of content to be displayed in PiP window. For adjusting PiP window aspect ratio.
*
* @type { ?number }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Describes the height of content to be displayed in PiP window. For adjusting PiP window aspect ratio.
*
* @type { ?number }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
contentHeight?: number;
/**
* Describes the custom controls to be displayed in PiP window control panel. If the parameter is empty, only mandatory controls are displayed.
*
* @type { ?Array<PiPControlGroup> }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
controlGroups?: Array<PiPControlGroup>;
/**
* Describes the customUIController by which we can display a custom layout above pip content.
*
* @type { ?NodeController }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
customUIController?: NodeController;
}
/**
* Describe the type of picture-in-picture.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Describe the type of picture-in-picture.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
enum PiPTemplateType {
/**
* Indicates the content to show in picture-in-picture window is video play
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Indicates the content to show in picture-in-picture window is video play
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_PLAY,
/**
* Indicates the content to show in picture-in-picture window is video call
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Indicates the content to show in picture-in-picture window is video call
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_CALL,
/**
* Indicates the content to show in picture-in-picture window is video meeting
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Indicates the content to show in picture-in-picture window is video meeting
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_MEETING,
/**
* Indicates the content to show in picture-in-picture window is video live
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Indicates the content to show in picture-in-picture window is video live
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_LIVE,
}
/**
* Enum for PiP window callback event type.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Enum for PiP window callback event type.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
enum PiPState {
/**
* PiP window is about to start.
*
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* PiP window is about to start.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
ABOUT_TO_START = 1,
/**
* PiP window started.
*
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* PiP window started.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
STARTED = 2,
/**
* PiP window is about to stop.
*
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* PiP window is about to stop.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
ABOUT_TO_STOP = 3,
/**
* PiP window stopped.
*
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* PiP window stopped.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
STOPPED = 4,
/**
* Restore the original page from PiP window
*
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Restore the original page from PiP window
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
ABOUT_TO_RESTORE = 5,
/**
* Error message during start/stop.
*
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Error message during start/stop.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
ERROR = 6,
}
/**
* Describe PiP window custom controls.
*
* @typedef { VideoPlayControlGroup | VideoCallControlGroup | VideoMeetingControlGroup | VideoLiveControlGroup }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
type PiPControlGroup = VideoPlayControlGroup | VideoCallControlGroup | VideoMeetingControlGroup | VideoLiveControlGroup;
/**
* Enum for video play PiP window custom controls.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
enum VideoPlayControlGroup {
/**
* Previous/Next for video.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_PREVIOUS_NEXT = 101,
/**
* Forward/Backward for video.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
FAST_FORWARD_BACKWARD = 102,
}
/**
* Enum for video call PiP window custom controls.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
enum VideoCallControlGroup {
/**
* Turn on/off the microphone.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
MICROPHONE_SWITCH = 201,
/**
* Hang up.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
HANG_UP_BUTTON = 202,
/**
* Turn on/off the camera
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
CAMERA_SWITCH = 203,
/**
* Mute switch.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
MUTE_SWITCH = 204,
}
/**
* Enum for video meeting PiP window custom controls.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
enum VideoMeetingControlGroup {
/**
* Hang up.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
HANG_UP_BUTTON = 301,
/**
* Turn on/off the camera
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
CAMERA_SWITCH = 302,
/**
* Mute switch.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
MUTE_SWITCH = 303,
/**
* Turn on/off the microphone.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
MICROPHONE_SWITCH = 304,
}
/**
* Enum for video Live PiP window custom controls.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
enum VideoLiveControlGroup {
/**
* Video play/pause control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_PLAY_PAUSE = 401,
/**
* Mute switch.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
MUTE_SWITCH = 402,
}
/**
* Enum for control status.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
enum PiPControlStatus {
/**
* The video is in play mode.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
PLAY = 1,
/**
* The video is in pause mode.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
PAUSE = 0,
/**
* A control with both open and closed states is in an open state.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
OPEN = 1,
/**
* A control with both open and closed states is in a close state.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
CLOSE = 0,
}
/**
* Enum for control type.
*
* @enum { number }.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
enum PiPControlType {
/**
* Video play/pause control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_PLAY_PAUSE = 0,
/**
* Previous video control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_PREVIOUS = 1,
/**
* Next video control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
VIDEO_NEXT = 2,
/**
* Fast-forward control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
FAST_FORWARD = 3,
/**
* Fast-backward control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
FAST_BACKWARD = 4,
/**
* Hang-up control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
HANG_UP_BUTTON = 5,
/**
* Microphone state switching control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
MICROPHONE_SWITCH = 6,
/**
* Camera state switching control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
CAMERA_SWITCH = 7,
/**
* Mute state switching control.
*
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
MUTE_SWITCH = 8,
}
/**
* Describe picture-in-picture action event type.
*
* @typedef { PiPVideoActionEvent | PiPCallActionEvent | PiPMeetingActionEvent | PiPLiveActionEvent }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Describe picture-in-picture action event type.
*
* @typedef { PiPVideoActionEvent | PiPCallActionEvent | PiPMeetingActionEvent | PiPLiveActionEvent }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
type PiPActionEventType = PiPVideoActionEvent | PiPCallActionEvent | PiPMeetingActionEvent | PiPLiveActionEvent;
/**
* Describe picture-in-picture video template action event type.
*
* @typedef { 'playbackStateChanged' | 'nextVideo' | 'previousVideo' }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Describe picture-in-picture video template action event type.
*
* @typedef { 'playbackStateChanged' | 'nextVideo' | 'previousVideo' | 'fastForward' | 'fastBackward' }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
type PiPVideoActionEvent = 'playbackStateChanged' | 'nextVideo' | 'previousVideo' | 'fastForward' | 'fastBackward';
/**
* Describe picture-in-picture call template action event type.
*
* @typedef { 'hangUp' | 'micStateChanged' | 'videoStateChanged' }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Describe picture-in-picture call template action event type.
*
* @typedef { 'hangUp' | 'micStateChanged' | 'videoStateChanged' | 'voiceStateChanged' }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
type PiPCallActionEvent = 'hangUp' | 'micStateChanged' | 'videoStateChanged' | 'voiceStateChanged';
/**
* Describe picture-in-picture meeting template action event type.
*
* @typedef { 'hangUp' | 'voiceStateChanged' | 'videoStateChanged' }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Describe picture-in-picture meeting template action event type.
*
* @typedef { 'hangUp' | 'voiceStateChanged' | 'videoStateChanged' | 'micStateChanged' }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
type PiPMeetingActionEvent = 'hangUp' | 'voiceStateChanged' | 'videoStateChanged' | 'micStateChanged';
/**
* Describe picture-in-picture live template action event type.
*
* @typedef { 'playbackStateChanged' }
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Describe picture-in-picture live template action event type.
*
* @typedef { 'playbackStateChanged' | 'voiceStateChanged' }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
type PiPLiveActionEvent = 'playbackStateChanged' | 'voiceStateChanged';
/**
* Describe picture-in-picture control panel action event callback.
*
* @typedef { function } ControlPanelActionEventCallback
* @param { PiPActionEventType } event - the event from controlPanel
* @param { number } [status] - the status of control button
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
type ControlPanelActionEventCallback = (event: PiPActionEventType, status?: number) => void;
/**
* Describe picture-in-picture control event callback.
*
* @interface ControlEventParam
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
interface ControlEventParam {
/**
* The type of control.
*
* @type { PiPControlType }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
controlType: PiPControlType;
/**
* The status of control.
*
* @type { ?PiPControlStatus }
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
status?: PiPControlStatus;
}
/**
* PiPController
*
* @interface PiPController
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* PiPController
*
* @interface PiPController
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
interface PiPController {
/**
* Start picture-in-picture
* @returns { Promise<void> } - The promise returned by the function
* @throws { BusinessError } 1300012 - The PiP window state is abnormal.
* @throws { BusinessError } 1300013 - Failed to create the PiP window.
* @throws { BusinessError } 1300014 - PiP internal error.
* @throws { BusinessError } 1300015 - Repeated PiP operation.
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Start picture-in-picture
* @returns { Promise<void> } - The promise returned by the function
* @throws { BusinessError } 1300012 - The PiP window state is abnormal.
* @throws { BusinessError } 1300013 - Failed to create the PiP window.
* @throws { BusinessError } 1300014 - PiP internal error.
* @throws { BusinessError } 1300015 - Repeated PiP operation.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
startPiP(): Promise<void>;
/**
* Stop picture-in-picture.
* @returns { Promise<void> } - The promise returned by the function.
* @throws { BusinessError } 1300011 - Failed to destroy the PiP window.
* @throws { BusinessError } 1300012 - The PiP window state is abnormal.
* @throws { BusinessError } 1300015 - Repeated PiP operation.
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Stop picture-in-picture.
* @returns { Promise<void> } - The promise returned by the function.
* @throws { BusinessError } 1300011 - Failed to destroy the PiP window.
* @throws { BusinessError } 1300012 - The PiP window state is abnormal.
* @throws { BusinessError } 1300015 - Repeated PiP operation.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
stopPiP(): Promise<void>;
/**
* Set if auto start picture-in-picture when back home
* @param { boolean } enable - Enable auto start picture-in-picture when back home
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Set if auto start picture-in-picture when back home
* @param { boolean } enable - Enable auto start picture-in-picture when back home
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
setAutoStartEnabled(enable: boolean): void;
/**
* Update source content size to adjust PiP window aspect ratio.
* @param { number } width - Indicate the width of the content. The width can consist of only digits and above 0.
* @param { number } height - Indicate the height of the content. The height can consist of only digits and above 0.
* @throws { BusinessError } 401 - Params error. Possible causes: 1. Mandatory parameters are left unspecified.
* 2. Incorrect parameter types.
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Update source content size to adjust PiP window aspect ratio.
* @param { number } width - Indicate the width of the content. The width can consist of only digits and above 0.
* @param { number } height - Indicate the height of the content. The height can consist of only digits and above 0.
* @throws { BusinessError } 401 - Params error. Possible causes: 1. Mandatory parameters are left unspecified.
* 2. Incorrect parameter types.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
updateContentSize(width: number, height: number): void;
/**
* Set dashboard control status.
* @param { PiPControlType } controlType - Describe picture-in-picture control type.
* @param { PiPControlStatus } status - Describe picture-in-picture control Status.
* @throws { BusinessError } 401 - Params error. Possible causes: 1. Mandatory parameters are left unspecified.
* 2. Incorrect parameter types.
* 3. Parameter verification failed
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
updatePiPControlStatus(controlType: PiPControlType, status: PiPControlStatus): void;
/**
* Set Dashboard control enable status.
* @param { PiPControlType } controlType - Describe picture-in-picture control type.
* @param { boolean } enabled - Describe picture-in-picture control enable Status.
* @throws { BusinessError } 401 - Params error. Possible causes: 1. Mandatory parameters are left unspecified.
* 2. Incorrect parameter types.
* 3. Parameter verification failed
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
setPiPControlEnabled(controlType: PiPControlType, enabled: boolean): void;
/**
* Register picture-in-picture control event listener.
* @param { 'stateChange' } type - Registration type, PiP lifecycle state change, 'stateChange'
* @param { function } callback - Used to handle {'stateChange'} command
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Register picture-in-picture control event listener.
* @param { 'stateChange' } type - Registration type, PiP lifecycle state change, 'stateChange'
* @param { function } callback - Used to handle {'stateChange'} command
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
on(type: 'stateChange', callback: (state: PiPState, reason: string) => void): void;
/**
* Unregister picture-in-picture lifecycle event listener.
* @param { 'stateChange' } type - Used to unregister listener for {'stateChange'} command
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Unregister picture-in-picture lifecycle event listener.
* @param { 'stateChange' } type - Used to unregister listener for {'stateChange'} command
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
off(type: 'stateChange'): void;
/**
* Register picture-in-picture control event listener.
* @param { 'controlPanelActionEvent' } type - Registration type, user action event, 'controlPanelActionEvent'
* @param { function } callback - Used to handle {'controlPanelActionEvent'} command
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Register picture-in-picture control event listener.
*
* @param { 'controlPanelActionEvent' } type - Registration type, user action event, 'controlPanelActionEvent'
* @param { ControlPanelActionEventCallback } callback - Used to handle {'controlPanelActionEvent'} command.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
on(type: 'controlPanelActionEvent', callback: ControlPanelActionEventCallback): void;
/**
* Unregister picture-in-picture lifecycle event listener
* @param { 'controlPanelActionEvent' } type - Used to unregister listener for {'controlPanelActionEvent'} command
* @syscap SystemCapability.Window.SessionManager
* @since 11
*/
/**
* Unregister picture-in-picture lifecycle event listener
* @param { 'controlPanelActionEvent' } type - Used to unregister listener for {'controlPanelActionEvent'} command
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
off(type: 'controlPanelActionEvent'): void;
/**
* Register picture-in-picture control event listener.
*
* @param { 'controlEvent' } type - Registration type, user action event, 'controlEvent'
* @param { Callback<ControlEventParam> } callback - Used to handle {'controlEvent'} command.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
on(type: 'controlEvent', callback: Callback<ControlEventParam>): void;
/**
* Unregister picture-in-picture control event listener
* @param { 'controlEvent' } type - Used to unregister listener for {'controlEvent'} command
* @param { Callback<ControlEventParam> } callback - Used to handle {'controlEvent'} command.
* @syscap SystemCapability.Window.SessionManager
* @atomicservice
* @since 12
*/
off(type: 'controlEvent', callback?: Callback<ControlEventParam>): void;
}
}
export default PiPWindow;
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/lffl8796/interface_sdk-js.git
git@gitee.com:lffl8796/interface_sdk-js.git
lffl8796
interface_sdk-js
interface_sdk-js
master

搜索帮助