1/* 2* Copyright (C) 2021 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 16import {AsyncCallback, Callback} from "./basic"; 17 18/** 19 * Provides securityLabel APIs 20 * 21 * @since 9 22 * @syscap SystemCapability.FileManagement.File.FileIO 23 */ 24 25declare namespace securityLabel { 26 27 type dataLevel = 's0'|'s1'|'s2'|'s3'|'s4'; 28 /** 29 * set the SecurityLabel. 30 * 31 * @since 9 32 */ 33 function setSecurityLabel(path:string, type:dataLevel, callback: AsyncCallback<void>): void; 34 function setSecurityLabel(path:string, type:dataLevel): Promise<void>; 35 36 /** 37 * set the SecurityLabelSync. 38 * 39 * @since 9 40 */ 41 function setSecurityLabelSync(path:string, type:dataLevel): void; 42 43 /** 44 * get the SecurityLabel. 45 * 46 * @since 9 47 */ 48 function getSecurityLabel(path:string, callback: AsyncCallback<string>): void; 49 function getSecurityLabel(path:string): Promise<string>; 50 51 /** 52 * get the SecurityLabelSync. 53 * 54 * @since 9 55 */ 56 function getSecurityLabelSync(path:string): string; 57} 58 59export default securityLabel;