1/* 2 * Copyright (C) 2025 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15/** 16 * @file 17 * @kit ArkUI 18 * @arkts 1.2 19 */ 20 21@Retention({policy: "SOURCE"}) 22export declare @interface State {}; 23 24@Retention({policy: "SOURCE"}) 25export declare @interface Prop {}; 26 27@Retention({policy: "SOURCE"}) 28export declare @interface Link {}; 29 30@Retention({policy: "SOURCE"}) 31export declare @interface Observed {}; 32 33@Retention({policy: "SOURCE"}) 34export declare @interface Track {}; 35 36@Retention({policy: "SOURCE"}) 37export declare @interface ObjectLink {}; 38 39@Retention({policy: "SOURCE"}) 40export declare @interface StorageProp { 41 property: string; 42}; 43 44@Retention({policy: "SOURCE"}) 45export declare @interface StorageLink { 46 property: string; 47}; 48 49@Retention({policy: "SOURCE"}) 50export declare @interface LocalStorageProp { 51 property: string; 52}; 53 54@Retention({policy: "SOURCE"}) 55export declare @interface LocalStorageLink { 56 property: string; 57}; 58 59@Retention({policy: "SOURCE"}) 60export declare @interface Provide { 61 alias: string = ""; 62 allowOverride: boolean = false; 63}; 64 65@Retention({policy: "SOURCE"}) 66export declare @interface Consume { 67 alias: string = ""; 68}; 69 70@Retention({policy: "SOURCE"}) 71export declare @interface Watch { 72 callback: string; 73}; 74 75@Retention({policy: "SOURCE"}) 76export declare @interface Require {}; 77 78export declare class UIUtils { 79 static getTarget<T extends object>(source: T): T; 80 static makeObserved<T extends object>(source: T): T; 81} 82