text: // NOTE: This file was generated by the ServiceGenerator.
  
  // ----------------------------------------------------------------------------
  // API:
  //   Google Cloud Trace API (cloudtrace/v1)
  // Description:
  //   Send and retrieve trace data from Google Cloud Trace. Data is generated and
  //   available by default for all App Engine applications. Data from other
  //   applications can be written to Cloud Trace for display, reporting, and
  //   analysis.
  // Documentation:
  //   https://cloud.google.com/tools/cloud-trace
  
  #if GTLR_BUILT_AS_FRAMEWORK
    #import "GTLR/GTLRQuery.h"
  #else
    #import "GTLRQuery.h"
  #endif
  
  #if GTLR_RUNTIME_VERSION != 3000
  #error This file was generated by a different version of ServiceGenerator which is incompatible with this GTLR library source.
  #endif
  
  @class GTLRCloudTrace_Traces;
  
  NS_ASSUME_NONNULL_BEGIN
  
  // ----------------------------------------------------------------------------
  // Constants - For some of the query classes' properties below.
  
  // ----------------------------------------------------------------------------
  // view
  
  /** Value: "COMPLETE" */
  GTLR_EXTERN NSString * const kGTLRCloudTraceViewComplete;
  /** Value: "MINIMAL" */
  GTLR_EXTERN NSString * const kGTLRCloudTraceViewMinimal;
  /** Value: "ROOTSPAN" */
  GTLR_EXTERN NSString * const kGTLRCloudTraceViewRootspan;
  /** Value: "VIEW_TYPE_UNSPECIFIED" */
  GTLR_EXTERN NSString * const kGTLRCloudTraceViewViewTypeUnspecified;
  
  // ----------------------------------------------------------------------------
  // Query Classes
  //
  
  /**
   *  Parent class for other Cloud Trace query classes.
   */
  @interface GTLRCloudTraceQuery : GTLRQuery
  
  /** Selector specifying which fields to include in a partial response. */
  @property(nonatomic, copy, nullable) NSString *fields;
  
  @end
  
  /**
   *  Sends new traces to Stackdriver Trace or updates existing traces. If the ID
   *  of a trace that you send matches that of an existing trace, any fields in
   *  the existing trace and its spans are overwritten by the provided values, and
   *  any new fields provided are merged with the existing trace data. If the ID
   *  does not match, a new trace is created.
   *
   *  Method: cloudtrace.projects.patchTraces
   *
   *  Authorization scope(s):
   *    @c kGTLRAuthScopeCloudTraceCloudPlatform
   *    @c kGTLRAuthScopeCloudTraceTraceAppend
   */
  @interface GTLRCloudTraceQuery_ProjectsPatchTraces : GTLRCloudTraceQuery
  // Previous library name was
  //   +[GTLQueryCloudTrace queryForProjectsPatchTracesWithObject:projectId:]
  
  /** ID of the Cloud project where the trace data is stored. */
  @property(nonatomic, copy, nullable) NSString *projectId;
  
  /**
   *  Fetches a @c GTLRCloudTrace_Empty.
   *
   *  Sends new traces to Stackdriver Trace or updates existing traces. If the ID
   *  of a trace that you send matches that of an existing trace, any fields in
   *  the existing trace and its spans are overwritten by the provided values, and
   *  any new fields provided are merged with the existing trace data. If the ID
   *  does not match, a new trace is created.
   *
   *  @param object The @c GTLRCloudTrace_Traces to include in the query.
   *  @param projectId ID of the Cloud project where the trace data is stored.
   *
   *  @returns GTLRCloudTraceQuery_ProjectsPatchTraces
   */
  + (instancetype)queryWithObject:(GTLRCloudTrace_Traces *)object
                        projectId:(NSString *)projectId;
  
  @end
  
  /**
   *  Gets a single trace by its ID.
   *
   *  Method: cloudtrace.projects.traces.get
   *
   *  Authorization scope(s):
   *    @c kGTLRAuthScopeCloudTraceCloudPlatform
   *    @c kGTLRAuthScopeCloudTraceTraceReadonly
   */
  @interface GTLRCloudTraceQuery_ProjectsTracesGet : GTLRCloudTraceQuery
  // Previous library name was
  //   +[GTLQueryCloudTrace queryForProjectsTracesGetWithprojectId:traceId:]
  
  /** ID of the Cloud project where the trace data is stored. */
  @property(nonatomic, copy, nullable) NSString *projectId;
  
  /** ID of the trace to return. */
  @property(nonatomic, copy, nullable) NSString *traceId;
  
  /**
   *  Fetches a @c GTLRCloudTrace_Trace.
   *
   *  Gets a single trace by its ID.
   *
   *  @param projectId ID of the Cloud project where the trace data is stored.
   *  @param traceId ID of the trace to return.
   *
   *  @returns GTLRCloudTraceQuery_ProjectsTracesGet
   */
  + (instancetype)queryWithProjectId:(NSString *)projectId
                             traceId:(NSString *)traceId;
  
  @end
  
  /**
   *  Returns of a list of traces that match the specified filter conditions.
   *
   *  Method: cloudtrace.projects.traces.list
   *
   *  Authorization scope(s):
   *    @c kGTLRAuthScopeCloudTraceCloudPlatform
   *    @c kGTLRAuthScopeCloudTraceTraceReadonly
   */
  @interface GTLRCloudTraceQuery_ProjectsTracesList : GTLRCloudTraceQuery
  // Previous library name was
  //   +[GTLQueryCloudTrace queryForProjectsTracesListWithprojectId:]
  
  /**
   *  Start of the time interval (inclusive) during which the trace data was
   *  collected from the application.
   */
  @property(nonatomic, copy, nullable) NSString *endTime;
  
  /** An optional filter for the request. */
  @property(nonatomic, copy, nullable) NSString *filter;
  
  /**
   *  Field used to sort the returned traces. Optional. Can be one of the
   *  following: * `trace_id` * `name` (`name` field of root span in the trace) *
   *  `duration` (difference between `end_time` and `start_time` fields of the
   *  root span) * `start` (`start_time` field of the root span) Descending order
   *  can be specified by appending `desc` to the sort field (for example, `name
   *  desc`). Only one sort field is permitted.
   */
  @property(nonatomic, copy, nullable) NSString *orderBy;
  
  /**
   *  Maximum number of traces to return. If not specified or <= 0, the
   *  implementation selects a reasonable value. The implementation may return
   *  fewer traces than the requested page size. Optional.
   */
  @property(nonatomic, assign) NSInteger pageSize;
  
  /**
   *  Token identifying the page of results to return. If provided, use the value
   *  of the `next_page_token` field from a previous request. Optional.
   */
  @property(nonatomic, copy, nullable) NSString *pageToken;
  
  /** ID of the Cloud project where the trace data is stored. */
  @property(nonatomic, copy, nullable) NSString *projectId;
  
  /**
   *  End of the time interval (inclusive) during which the trace data was
   *  collected from the application.
   */
  @property(nonatomic, copy, nullable) NSString *startTime;
  
  /**
   *  Type of data returned for traces in the list. Optional. Default is
   *  `MINIMAL`.
   *
   *  Likely values:
   *    @arg @c kGTLRCloudTraceViewViewTypeUnspecified Value
   *        "VIEW_TYPE_UNSPECIFIED"
   *    @arg @c kGTLRCloudTraceViewMinimal Value "MINIMAL"
   *    @arg @c kGTLRCloudTraceViewRootspan Value "ROOTSPAN"
   *    @arg @c kGTLRCloudTraceViewComplete Value "COMPLETE"
   */
  @property(nonatomic, copy, nullable) NSString *view;
  
  /**
   *  Fetches a @c GTLRCloudTrace_ListTracesResponse.
   *
   *  Returns of a list of traces that match the specified filter conditions.
   *
   *  @param projectId ID of the Cloud project where the trace data is stored.
   *
   *  @returns GTLRCloudTraceQuery_ProjectsTracesList
   *
   *  @note Automatic pagination will be done when @c shouldFetchNextPages is
   *        enabled. See @c shouldFetchNextPages on @c GTLRService for more
   *        information.
   */
  + (instancetype)queryWithProjectId:(NSString *)projectId;
  
  @end
  
  NS_ASSUME_NONNULL_END
  