// Generated by xsd compiler for ios/objective-c
// DO NOT CHANGE!

#import <Foundation/Foundation.h>
#import "PicoClassSchema.h"
#import "PicoPropertySchema.h"
#import "PicoConstants.h"
#import "PicoBindable.h"
#import "Trading_AbstractRequestType.h"



/**
 
 Returns information about the features that are applicable to different categories,
 such as listing durations, shipping term requirements, and Best Offer support.
 
 
 @ingroup EBayAPIInterface
*/
@interface Trading_GetCategoryFeaturesRequestType : Trading_AbstractRequestType {

@private
    NSString *_categoryID;
    NSNumber *_levelLimit;
    NSNumber *_viewAllNodes;
    NSMutableArray *_featureID;
    NSNumber *_allFeaturesForCategory;

}


/**
 
 Specifies the category for which you want to retrieve the feature settings.
 <br><br>
 Specify a CategoryID, set DetailLevel to ReturnAll, and set
 ViewAllNodes to true to return the default site settings, the
 overrides for the specified category, plus all the child
 categories that have overrides on the features they inherit.
 <br><br>
 If you also set AllFeaturesForCategory to true, eBay returns the site
 defaults, plus all the settings for the specified category. Child
 category information is not returned in this case.
 <br><br>
 If CategoryID is not specified, eBay returns the feature settings for
 the site. To return details on all categories that have overrides on
 the properties they inherit, set DetailLevel to ReturnAll, and set
 ViewAllNodes to true. If you also set AllFeaturesForCategory to true,
 eBay returns only the site defaults with no child category information.
 
 
 type : NSString, wrapper for primitive string
*/
@property (nonatomic, retain) NSString *categoryID;

/**
 
 A level of depth in the category hierarchy. Retrieves all category
 nodes with a CategoryLevel less than or equal to the LevelLimit
 value.
 
 
 type : NSNumber, wrapper for primitive int
*/
@property (nonatomic, retain) NSNumber *levelLimit;

/**
 
 You must set DetailLevel to ReturnAll in order to correctly populate the
 response when you set ViewAllNodes to true. In this case, eBay returns the
 site defaults along with all the categories that override the feature
 settings they inherit. Here, each Category container shows only the
 features that it has overridden from its parent node.
 <br><br>
 If you also specify a CategoryID, eBay returns the details for that category,
 along with containers for each of its child categories that have feature
 overrides.
 <br><br>
 Note that if ViewAllNodes is set to false (the default) and DetailLevel is
 set to ReturnAll, eBay returns only the leaf categories that have features
 that override the settings they inherit. In this case, the call will not
 return leaf categories that do not have overrides.
 
 
 type : NSNumber, wrapper for primitive bool
*/
@property (nonatomic, retain) NSNumber *viewAllNodes;

/**
 
 Use this field if you want to know if specific features are enabled at the site
 or root category level. Multiple <b>FeatureID</b> elements can be
 used in the request. If no <b>FeatureID</b> elements are used, the
 call retrieves data for all features, as applicable to the other request
 parameters.
 
 
 entry type : string constant in Trading_FeatureIDCodeType.h
*/

@property (nonatomic, retain) NSMutableArray *featureID;

/**
 
 Use this switch to view all of the feature settings for a specific category.
 All feature settings are returned, regardless of the site default settings.
 This element works in conjunction with CategoryID--refer to the notes for
 that element for more details.
 <br><br>
 If you also set FeatureID, eBay returns the status of the specified
 features only, for the specified category.
 
 
 type : NSNumber, wrapper for primitive bool
*/
@property (nonatomic, retain) NSNumber *allFeaturesForCategory;


@end
