#ifndef __KK_TSL_PARSE_H__
#define __KK_TSL_PARSE_H__
#include "kk_tsl_common.h"
#include "lite-cjson.h"
int _kk_tsl_property_search(_IN_ kk_tsl_t *shadow, _IN_ char *key, _IN_ int key_len,
                                   _OU_ kk_tsl_data_t **property, _OU_ int *index);
int kk_tsl_get_property_data(_IN_ kk_tsl_t *shadow, _IN_ char *key, _IN_ int key_len, _OU_ void **data);
int kk_tsl_data_search(_IN_ kk_tsl_data_t *input, _IN_ char *key,
                               _IN_ int key_len, _OU_ kk_tsl_data_t **output, _OU_ int *index);
int kk_tsl_assemble_property(_IN_ kk_tsl_t *shadow, _IN_ char *identifier, _IN_ int identifier_len,
                             _IN_ lite_cjson_item_t *lite);
int kk_tsl_assemble_event_output(_IN_ kk_tsl_t *shadow, _IN_ char *identifier, _IN_ int identifier_len,
                                 _IN_ lite_cjson_item_t *lite);
int kk_tsl_assemble_service_output(_IN_ kk_tsl_t *shadow, _IN_ char *identifier, _IN_ int identifier_len,
                                   _IN_ lite_cjson_item_t *lite);
int kk_tsl_create(_IN_ const char *tsl, _IN_ int tsl_len, _OU_ kk_tsl_t **shadow,_OU_ int *heartbeat,_OU_ int *isDormancyDev);                                                                                                                                
#endif