1/* 2 * Copyright (C) 2024 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17import {PropertyTreeNode} from 'trace/tree_node/property_tree_node'; 18 19export interface SfLayerSummary { 20 layerId: string; 21 nodeId: string; 22 name: string; 23} 24 25export interface SfSummaryProperty { 26 key: string; 27 desc?: string; 28 simpleValue?: string; 29 layerValues?: SfLayerSummary[]; 30} 31 32export interface SfCuratedProperties { 33 summary: SfSummaryProperty[]; 34 flags: string; 35 calcTransform: PropertyTreeNode | undefined; 36 calcCrop: string; 37 finalBounds: string; 38 reqTransform: PropertyTreeNode | undefined; 39 bufferSize: string; 40 frameNumber: string; 41 bufferTransformType: string; 42 destinationFrame: string; 43 z: string; 44 relativeParent: string | SfLayerSummary; 45 relativeChildren: SfLayerSummary[]; 46 calcColor: string; 47 calcShadowRadius: string; 48 calcCornerRadius: string; 49 calcCornerRadiusCrop: string; 50 backgroundBlurRadius: string; 51 reqColor: string; 52 reqCornerRadius: string; 53 inputTransform: PropertyTreeNode | undefined; 54 inputRegion: string | undefined; 55 focusable: string; 56 cropTouchRegionWithItem: string; 57 replaceTouchRegionWithCrop: string; 58 inputConfig: string; 59 ignoreDestinationFrame: boolean; 60 hasInputChannel: boolean; 61} 62 63export interface VcCuratedProperties { 64 className: string; 65 hashcode: string; 66 left: string; 67 top: string; 68 elevation: string; 69 height: string; 70 width: string; 71 translationX: string; 72 translationY: string; 73 scrollX: string; 74 scrollY: string; 75 scaleX: string; 76 scaleY: string; 77 visibility: string; 78 alpha: string; 79 willNotDraw: string; 80 clipChildren: string; 81} 82 83export type CuratedProperties = SfCuratedProperties | VcCuratedProperties; 84