161847f8eSopenharmony_ci/* 261847f8eSopenharmony_ci* Copyright (C) 2023 Huawei Device Co., Ltd. 361847f8eSopenharmony_ci* Licensed under the Apache License, Version 2.0 (the "License"); 461847f8eSopenharmony_ci* you may not use this file except in compliance with the License. 561847f8eSopenharmony_ci* You may obtain a copy of the License at 661847f8eSopenharmony_ci* 761847f8eSopenharmony_ci* http://www.apache.org/licenses/LICENSE-2.0 861847f8eSopenharmony_ci* 961847f8eSopenharmony_ci* Unless required by applicable law or agreed to in writing, software 1061847f8eSopenharmony_ci* distributed under the License is distributed on an "AS IS" BASIS, 1161847f8eSopenharmony_ci* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1261847f8eSopenharmony_ci* See the License for the specific language governing permissions and 1361847f8eSopenharmony_ci* limitations under the License. 1461847f8eSopenharmony_ci*/ 1561847f8eSopenharmony_ci 1661847f8eSopenharmony_ci/** 1761847f8eSopenharmony_ci * @file 1861847f8eSopenharmony_ci * @kit AVSessionKit 1961847f8eSopenharmony_ci */ 2061847f8eSopenharmony_ci 2161847f8eSopenharmony_ciimport { AVCastPickerState } from './@ohos.multimedia.avCastPickerParam'; 2261847f8eSopenharmony_ciimport { AVCastPickerStyle } from './@ohos.multimedia.avCastPickerParam'; 2361847f8eSopenharmony_ciimport { AVCastPickerColorMode } from './@ohos.multimedia.avCastPickerParam'; 2461847f8eSopenharmony_ci 2561847f8eSopenharmony_ci/** 2661847f8eSopenharmony_ci * A picker view to show availale streaming device list. 2761847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 2861847f8eSopenharmony_ci * @since 10 2961847f8eSopenharmony_ci */ 3061847f8eSopenharmony_ci /** 3161847f8eSopenharmony_ci * A picker view to show availale streaming device list. 3261847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 3361847f8eSopenharmony_ci * @atomicservice 3461847f8eSopenharmony_ci * @since 12 3561847f8eSopenharmony_ci */ 3661847f8eSopenharmony_ci@Component 3761847f8eSopenharmony_cideclare struct AVCastPicker { 3861847f8eSopenharmony_ci /** 3961847f8eSopenharmony_ci * Assigns the color of picker component at normal state . 4061847f8eSopenharmony_ci * @type { ? Color | number | string } 4161847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 4261847f8eSopenharmony_ci * @crossplatform 4361847f8eSopenharmony_ci * @since 11 4461847f8eSopenharmony_ci */ 4561847f8eSopenharmony_ci /** 4661847f8eSopenharmony_ci * Assigns the color of picker component at normal state . 4761847f8eSopenharmony_ci * @type { ? Color | number | string } 4861847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 4961847f8eSopenharmony_ci * @crossplatform 5061847f8eSopenharmony_ci * @atomicservice 5161847f8eSopenharmony_ci * @since 12 5261847f8eSopenharmony_ci */ 5361847f8eSopenharmony_ci @Prop 5461847f8eSopenharmony_ci normalColor?: Color | number | string; 5561847f8eSopenharmony_ci 5661847f8eSopenharmony_ci /** 5761847f8eSopenharmony_ci * Assigns the color of picker component at active state. 5861847f8eSopenharmony_ci * @type { ? Color | number | string } 5961847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 6061847f8eSopenharmony_ci * @crossplatform 6161847f8eSopenharmony_ci * @since 11 6261847f8eSopenharmony_ci */ 6361847f8eSopenharmony_ci /** 6461847f8eSopenharmony_ci * Assigns the color of picker component at active state. 6561847f8eSopenharmony_ci * @type { ? Color | number | string } 6661847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 6761847f8eSopenharmony_ci * @crossplatform 6861847f8eSopenharmony_ci * @atomicservice 6961847f8eSopenharmony_ci * @since 12 7061847f8eSopenharmony_ci */ 7161847f8eSopenharmony_ci @Prop 7261847f8eSopenharmony_ci activeColor?: Color | number | string; 7361847f8eSopenharmony_ci 7461847f8eSopenharmony_ci /** 7561847f8eSopenharmony_ci * Set the picker style. 7661847f8eSopenharmony_ci * @type { ? AVCastPickerStyle } 7761847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 7861847f8eSopenharmony_ci * @atomicservice 7961847f8eSopenharmony_ci * @since 12 8061847f8eSopenharmony_ci */ 8161847f8eSopenharmony_ci @Prop 8261847f8eSopenharmony_ci pickerStyle?: AVCastPickerStyle; 8361847f8eSopenharmony_ci 8461847f8eSopenharmony_ci /** 8561847f8eSopenharmony_ci * Set the picker color mode. 8661847f8eSopenharmony_ci * @type { ? AVCastPickerColorMode } 8761847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 8861847f8eSopenharmony_ci * @atomicservice 8961847f8eSopenharmony_ci * @since 12 9061847f8eSopenharmony_ci */ 9161847f8eSopenharmony_ci @Prop 9261847f8eSopenharmony_ci colorMode?: AVCastPickerColorMode; 9361847f8eSopenharmony_ci 9461847f8eSopenharmony_ci /** 9561847f8eSopenharmony_ci * Set the session type used by current picker component which can refer to AVSessionType in avSession. 9661847f8eSopenharmony_ci * If not set, default value is 'audio'. 9761847f8eSopenharmony_ci * @type { ? string } 9861847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 9961847f8eSopenharmony_ci * @atomicservice 10061847f8eSopenharmony_ci * @since 12 10161847f8eSopenharmony_ci */ 10261847f8eSopenharmony_ci @Prop 10361847f8eSopenharmony_ci sessionType?: string; 10461847f8eSopenharmony_ci 10561847f8eSopenharmony_ci /** 10661847f8eSopenharmony_ci * Set the custom builder for the picker appearance. 10761847f8eSopenharmony_ci * If not set, system will show the default appearance for different device type. 10861847f8eSopenharmony_ci * @type { ? CustomBuilder } 10961847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 11061847f8eSopenharmony_ci * @atomicservice 11161847f8eSopenharmony_ci * @since 12 11261847f8eSopenharmony_ci */ 11361847f8eSopenharmony_ci @Prop 11461847f8eSopenharmony_ci customPicker?: CustomBuilder; 11561847f8eSopenharmony_ci 11661847f8eSopenharmony_ci /** 11761847f8eSopenharmony_ci * Picker state change callback. 11861847f8eSopenharmony_ci * @type { ?function } 11961847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 12061847f8eSopenharmony_ci * @crossplatform 12161847f8eSopenharmony_ci * @since 11 12261847f8eSopenharmony_ci */ 12361847f8eSopenharmony_ci /** 12461847f8eSopenharmony_ci * Picker state change callback. 12561847f8eSopenharmony_ci * @type { ?function } 12661847f8eSopenharmony_ci * @syscap SystemCapability.Multimedia.AVSession.AVCast 12761847f8eSopenharmony_ci * @crossplatform 12861847f8eSopenharmony_ci * @atomicservice 12961847f8eSopenharmony_ci * @since 12 13061847f8eSopenharmony_ci */ 13161847f8eSopenharmony_ci onStateChange?: (state: AVCastPickerState) => void; 13261847f8eSopenharmony_ci} 13361847f8eSopenharmony_ciexport default AVCastPicker;