1/******************************************************************************
2 *
3 *  Copyright 2020 NXP
4 *
5 *  Licensed under the Apache License, Version 2.0 (the "License");
6 *  you may not use this file except in compliance with the License.
7 *  You may obtain a copy of the License at
8 *
9 *  http://www.apache.org/licenses/LICENSE-2.0
10 *
11 *  Unless required by applicable law or agreed to in writing, software
12 *  distributed under the License is distributed on an "AS IS" BASIS,
13 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 *  See the License for the specific language governing permissions and
15 *  limitations under the License.
16 *
17 ******************************************************************************/
18package vendor.nxp.nxpnfc@2.0;
19
20interface INxpNfc {
21    /*
22     * Gets vendor params values whose Key has been provided.
23     *
24     * @param string
25     * @return output data as string
26     */
27    getVendorParam(string key)  generates (string value);
28
29    /*
30     * Saves the vendor params provided as key-value pair
31     *
32     * @param string key string value
33     * @return status as a boolean, true if success, false if failed
34     */
35    setVendorParam(string key, string value)  generates (bool status);
36
37    /*
38     * reset the ese based on resettype
39     *
40     * @param uint64_t to specify resetType
41     * @return status as a boolean, true if success, false if failed
42     */
43    resetEse(uint64_t resetType) generates (bool status);
44
45    /*
46     * updates ese with current state and notifies upper layer
47     *
48     * @param input current ese state to set
49     * @return status as a boolean, true if success, false if failed
50     */
51    setEseUpdateState(NxpNfcHalEseState eSEState)  generates (bool status);
52
53    /*
54     * Sets Transit config value
55     *
56     * @param string transit config value
57     * @return status as a boolean, true if success, false if failed
58     */
59    setNxpTransitConfig(string transitConfValue) generates (bool status);
60
61    /*
62     * api to check jcop update is required or not
63     *
64     * @param none
65     * @return status as a boolean, true if JCOP update required, false if not required.
66     */
67     isJcopUpdateRequired() generates (bool status);
68
69    /*
70     * api to check LS update is required or not
71     *
72     * @param none
73     * @return status as a boolean, true if LS update required, false if not required.
74     */
75     isLsUpdateRequired() generates (bool status);
76};
77