text: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // source: duration.proto
  
  // This CPP symbol can be defined to use imports that match up to the framework
  // imports needed when using CocoaPods.
  #if !defined(AIYOU_G_P_B_USE_PROTOBUF_FRAMEWORK_IMPORTS)
   #define AIYOU_G_P_B_USE_PROTOBUF_FRAMEWORK_IMPORTS 0
  #endif
  
  #if AIYOU_G_P_B_USE_PROTOBUF_FRAMEWORK_IMPORTS
   #import <Protobuf/AIYOU_G_P_BProtocolBuffers.h>
  #else
   #import "AIYOU_G_P_BProtocolBuffers.h"
  #endif
  
  #if GOOGLE_PROTOBUF_OBJC_VERSION < 30002
  #error This file was generated by a newer version of protoc which is incompatible with your Protocol Buffer library sources.
  #endif
  #if 30002 < GOOGLE_PROTOBUF_OBJC_MIN_SUPPORTED_VERSION
  #error This file was generated by an older version of protoc which is incompatible with your Protocol Buffer library sources.
  #endif
  
  // @@protoc_insertion_point(imports)
  
  #pragma clang diagnostic push
  #pragma clang diagnostic ignored "-Wdeprecated-declarations"
  
  CF_EXTERN_C_BEGIN
  
  NS_ASSUME_NONNULL_BEGIN
  
  #pragma mark - AIYOU_G_P_BDurationRoot
  
  /**
   * Exposes the extension registry for this file.
   *
   * The base class provides:
   * @code
   *   + (AIYOU_G_P_BExtensionRegistry *)extensionRegistry;
   * @endcode
   * which is a @c AIYOU_G_P_BExtensionRegistry that includes all the extensions defined by
   * this file and all files that it depends on.
   **/
  @interface AIYOU_G_P_BDurationRoot : AIYOU_G_P_BRootObject
  @end
  
  #pragma mark - AIYOU_G_P_BDuration
  
  typedef AIYOU_G_P_B_ENUM(AIYOU_G_P_BDuration_FieldNumber) {
    AIYOU_G_P_BDuration_FieldNumber_Seconds = 1,
    AIYOU_G_P_BDuration_FieldNumber_Nanos = 2,
  };
  
  /**
   * A Duration represents a signed, fixed-length span of time represented
   * as a count of seconds and fractions of seconds at nanosecond
   * resolution. It is independent of any calendar and concepts like "day"
   * or "month". It is related to Timestamp in that the difference between
   * two Timestamp values is a Duration and it can be added or subtracted
   * from a Timestamp. Range is approximately +-10,000 years.
   *
   * Example 1: Compute Duration from two Timestamps in pseudo code.
   *
   *     Timestamp start = ...;
   *     Timestamp end = ...;
   *     Duration duration = ...;
   *
   *     duration.seconds = end.seconds - start.seconds;
   *     duration.nanos = end.nanos - start.nanos;
   *
   *     if (duration.seconds < 0 && duration.nanos > 0) {
   *       duration.seconds += 1;
   *       duration.nanos -= 1000000000;
   *     } else if (durations.seconds > 0 && duration.nanos < 0) {
   *       duration.seconds -= 1;
   *       duration.nanos += 1000000000;
   *     }
   *
   * Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.
   *
   *     Timestamp start = ...;
   *     Duration duration = ...;
   *     Timestamp end = ...;
   *
   *     end.seconds = start.seconds + duration.seconds;
   *     end.nanos = start.nanos + duration.nanos;
   *
   *     if (end.nanos < 0) {
   *       end.seconds -= 1;
   *       end.nanos += 1000000000;
   *     } else if (end.nanos >= 1000000000) {
   *       end.seconds += 1;
   *       end.nanos -= 1000000000;
   *     }
   *
   * Example 3: Compute Duration from datetime.timedelta in Python.
   *
   *     td = datetime.timedelta(days=3, minutes=10)
   *     duration = Duration()
   *     duration.FromTimedelta(td)
   **/
  @interface AIYOU_G_P_BDuration : AIYOU_G_P_BMessage
  
  /**
   * Signed seconds of the span of time. Must be from -315,576,000,000
   * to +315,576,000,000 inclusive.
   **/
  @property(nonatomic, readwrite) int64_t seconds;
  
  /**
   * Signed fractions of a second at nanosecond resolution of the span
   * of time. Durations less than one second are represented with a 0
   * `seconds` field and a positive or negative `nanos` field. For durations
   * of one second or more, a non-zero value for the `nanos` field must be
   * of the same sign as the `seconds` field. Must be from -999,999,999
   * to +999,999,999 inclusive.
   **/
  @property(nonatomic, readwrite) int32_t nanos;
  
  @end
  
  NS_ASSUME_NONNULL_END
  
  CF_EXTERN_C_END
  
  #pragma clang diagnostic pop
  
  // @@protoc_insertion_point(global_scope)
  