18c339a94Sopenharmony_ci/* 28c339a94Sopenharmony_ci* Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd. 38c339a94Sopenharmony_ci* Licensed under the Apache License, Version 2.0 (the "License"); 48c339a94Sopenharmony_ci* you may not use this file except in compliance with the License. 58c339a94Sopenharmony_ci* You may obtain a copy of the License at 68c339a94Sopenharmony_ci* 78c339a94Sopenharmony_ci* http://www.apache.org/licenses/LICENSE-2.0 88c339a94Sopenharmony_ci* 98c339a94Sopenharmony_ci* Unless required by applicable law or agreed to in writing, software 108c339a94Sopenharmony_ci* distributed under the License is distributed on an "AS IS" BASIS, 118c339a94Sopenharmony_ci* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 128c339a94Sopenharmony_ci* See the License for the specific language governing permissions and 138c339a94Sopenharmony_ci* limitations under the License. 148c339a94Sopenharmony_ci*/ 158c339a94Sopenharmony_ciimport { AsyncCallback, Callback } from './../basic'; 168c339a94Sopenharmony_ci 178c339a94Sopenharmony_cideclare namespace napitest { 188c339a94Sopenharmony_ci interface Human { 198c339a94Sopenharmony_ci name: string; 208c339a94Sopenharmony_ci age: number; 218c339a94Sopenharmony_ci } 228c339a94Sopenharmony_ci 238c339a94Sopenharmony_ci function fun1(v0:string, v1?: string, v2?: number, v3?: boolean): number; 248c339a94Sopenharmony_ci class TestClass1 { 258c339a94Sopenharmony_ci interFun1(v0?:string, v1?: string, v2?: number, v3?: boolean): number; 268c339a94Sopenharmony_ci } 278c339a94Sopenharmony_ci function fun21(v0: string, v1?: Array<string>,v2?:Array<number>,v3?:Array<boolean>): number; 288c339a94Sopenharmony_ci function fun22(v0: string, v1?: string[],v2?:number[],v3?:boolean[]): number; 298c339a94Sopenharmony_ci function fun23(v0: string, v1?: AsyncCallback<string>): number; 308c339a94Sopenharmony_ci function fun23(v0: string): Promise<string>; 318c339a94Sopenharmony_ci class TestClass2 { 328c339a94Sopenharmony_ci interFun21(v0?: Array<number>, v1?: Array<string>, v2?: Array<boolean>): number; 338c339a94Sopenharmony_ci interFun22(v0?: number[], v1?: string[], v2?: boolean[]): number; 348c339a94Sopenharmony_ci } 358c339a94Sopenharmony_ci function fun31(v0: string, v1?: {[key:string]:number}): number; 368c339a94Sopenharmony_ci function fun32(v0: string, v1?: Map<string,string>): number; 378c339a94Sopenharmony_ci class TestClass3 { 388c339a94Sopenharmony_ci interFun31(v0:string, v1?: {[key:string]:number}): number; 398c339a94Sopenharmony_ci interFun32(v0:string, v1?: Map<string,boolean>): number; 408c339a94Sopenharmony_ci } 418c339a94Sopenharmony_ci export enum GrantStatus { 428c339a94Sopenharmony_ci PERMISSION_DEFAULT = "", 438c339a94Sopenharmony_ci PERMISSION_DENIED = "-1", 448c339a94Sopenharmony_ci PERMISSION_GRANTED = "2", 458c339a94Sopenharmony_ci PERMISSION_PASS = "3", 468c339a94Sopenharmony_ci } 478c339a94Sopenharmony_ci export enum HttpStatus { 488c339a94Sopenharmony_ci STATUS0 = 0, 498c339a94Sopenharmony_ci STATUS1 = 500, 508c339a94Sopenharmony_ci STATUS2 = 503, 518c339a94Sopenharmony_ci } 528c339a94Sopenharmony_ci function fun41(v0?: HttpStatus, v1?: GrantStatus): number; 538c339a94Sopenharmony_ci function fun42(reason: string, callback?: Callback<HttpStatus>): void; 548c339a94Sopenharmony_ci function fun51(v0?: Human, v1?: Human, v2?: Human): number; 558c339a94Sopenharmony_ci function fun52(v0?: Human, v2?: Array<Human>): number; 568c339a94Sopenharmony_ci function fun53(v0?: Human, callback?: Callback<Human>): void; 578c339a94Sopenharmony_ci class TestClass4 { 588c339a94Sopenharmony_ci interFun51(v0?: Human, v1?: Human, v2?: Human): number; 598c339a94Sopenharmony_ci } 608c339a94Sopenharmony_ci function fun61(v0?: {name: string, age: number}): number; 618c339a94Sopenharmony_ci} 628c339a94Sopenharmony_ci 638c339a94Sopenharmony_ciexport default napitest; 64