//
// © 2018-2020 Qualcomm Technologies, Inc. and/or its subsidiaries. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "IoTTypes.h"

@class IoTWrappedRepresentation;

@protocol IoTPackable
- (IoTWrappedRepresentation *)packWritable; // Only pack writable properties.
- (IoTWrappedRepresentation *)packAll; // Pack all properties.
- (BOOL)unpack:(IoTWrappedRepresentation *)packed;
@end

// Forward declarations
{% for schema_data in schema_objects %}
@class IoT{{schema_data.name|class_name_syntax}}Attr;
{% endfor %}

{% for schema_data in schema_objects %}
{% include "resource_attribute_class.h.jinja2" %}

{% endfor %}
