// This file was automatically generated by protocompiler
// DO NOT EDIT!
// Compiled from OTCDPRecoveryInformation.proto

#import <Foundation/Foundation.h>
#import <ProtocolBuffer/PBCodable.h>

@class OTCDPRecoveryInformation;
@class OTEscrowAuthenticationInformation;

#ifdef __cplusplus
#define OTICDPRECORDCONTEXT_FUNCTION extern "C"
#else
#define OTICDPRECORDCONTEXT_FUNCTION extern
#endif

@interface OTICDPRecordContext : PBCodable <NSCopying>
{
    OTEscrowAuthenticationInformation *_authInfo;
    OTCDPRecoveryInformation *_cdpInfo;
}


@property (nonatomic, readonly) BOOL hasCdpInfo;
@property (nonatomic, retain) OTCDPRecoveryInformation *cdpInfo;

@property (nonatomic, readonly) BOOL hasAuthInfo;
@property (nonatomic, retain) OTEscrowAuthenticationInformation *authInfo;

// Performs a shallow copy into other
- (void)copyTo:(OTICDPRecordContext *)other;

// Performs a deep merge from other into self
// If set in other, singular values in self are replaced in self
// Singular composite values are recursively merged
// Repeated values from other are appended to repeated values in self
- (void)mergeFrom:(OTICDPRecordContext *)other;

OTICDPRECORDCONTEXT_FUNCTION BOOL OTICDPRecordContextReadFrom(__unsafe_unretained OTICDPRecordContext *self, __unsafe_unretained PBDataReader *reader);

@end

