...

Source file src/google.golang.org/api/docs/v1/docs-gen.go

Documentation: google.golang.org/api/docs/v1

     1  // Copyright 2024 Google LLC.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Code generated file. DO NOT EDIT.
     6  
     7  // Package docs provides access to the Google Docs API.
     8  //
     9  // For product documentation, see: https://developers.google.com/docs/
    10  //
    11  // # Library status
    12  //
    13  // These client libraries are officially supported by Google. However, this
    14  // library is considered complete and is in maintenance mode. This means
    15  // that we will address critical bugs and security issues but will not add
    16  // any new features.
    17  //
    18  // When possible, we recommend using our newer
    19  // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
    20  // that are still actively being worked and iterated on.
    21  //
    22  // # Creating a client
    23  //
    24  // Usage example:
    25  //
    26  //	import "google.golang.org/api/docs/v1"
    27  //	...
    28  //	ctx := context.Background()
    29  //	docsService, err := docs.NewService(ctx)
    30  //
    31  // In this example, Google Application Default Credentials are used for
    32  // authentication. For information on how to create and obtain Application
    33  // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
    34  //
    35  // # Other authentication options
    36  //
    37  // By default, all available scopes (see "Constants") are used to authenticate.
    38  // To restrict scopes, use [google.golang.org/api/option.WithScopes]:
    39  //
    40  //	docsService, err := docs.NewService(ctx, option.WithScopes(docs.DriveReadonlyScope))
    41  //
    42  // To use an API key for authentication (note: some APIs do not support API
    43  // keys), use [google.golang.org/api/option.WithAPIKey]:
    44  //
    45  //	docsService, err := docs.NewService(ctx, option.WithAPIKey("AIza..."))
    46  //
    47  // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
    48  // flow, use [google.golang.org/api/option.WithTokenSource]:
    49  //
    50  //	config := &oauth2.Config{...}
    51  //	// ...
    52  //	token, err := config.Exchange(ctx, ...)
    53  //	docsService, err := docs.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
    54  //
    55  // See [google.golang.org/api/option.ClientOption] for details on options.
    56  package docs // import "google.golang.org/api/docs/v1"
    57  
    58  import (
    59  	"bytes"
    60  	"context"
    61  	"encoding/json"
    62  	"errors"
    63  	"fmt"
    64  	"io"
    65  	"net/http"
    66  	"net/url"
    67  	"strconv"
    68  	"strings"
    69  
    70  	googleapi "google.golang.org/api/googleapi"
    71  	internal "google.golang.org/api/internal"
    72  	gensupport "google.golang.org/api/internal/gensupport"
    73  	option "google.golang.org/api/option"
    74  	internaloption "google.golang.org/api/option/internaloption"
    75  	htransport "google.golang.org/api/transport/http"
    76  )
    77  
    78  // Always reference these packages, just in case the auto-generated code
    79  // below doesn't.
    80  var _ = bytes.NewBuffer
    81  var _ = strconv.Itoa
    82  var _ = fmt.Sprintf
    83  var _ = json.NewDecoder
    84  var _ = io.Copy
    85  var _ = url.Parse
    86  var _ = gensupport.MarshalJSON
    87  var _ = googleapi.Version
    88  var _ = errors.New
    89  var _ = strings.Replace
    90  var _ = context.Canceled
    91  var _ = internaloption.WithDefaultEndpoint
    92  var _ = internal.Version
    93  
    94  const apiId = "docs:v1"
    95  const apiName = "docs"
    96  const apiVersion = "v1"
    97  const basePath = "https://docs.googleapis.com/"
    98  const basePathTemplate = "https://docs.UNIVERSE_DOMAIN/"
    99  const mtlsBasePath = "https://docs.mtls.googleapis.com/"
   100  
   101  // OAuth2 scopes used by this API.
   102  const (
   103  	// See, edit, create, and delete all your Google Docs documents
   104  	DocumentsScope = "https://www.googleapis.com/auth/documents"
   105  
   106  	// See all your Google Docs documents
   107  	DocumentsReadonlyScope = "https://www.googleapis.com/auth/documents.readonly"
   108  
   109  	// See, edit, create, and delete all of your Google Drive files
   110  	DriveScope = "https://www.googleapis.com/auth/drive"
   111  
   112  	// See, edit, create, and delete only the specific Google Drive files you use
   113  	// with this app
   114  	DriveFileScope = "https://www.googleapis.com/auth/drive.file"
   115  
   116  	// See and download all your Google Drive files
   117  	DriveReadonlyScope = "https://www.googleapis.com/auth/drive.readonly"
   118  )
   119  
   120  // NewService creates a new Service.
   121  func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
   122  	scopesOption := internaloption.WithDefaultScopes(
   123  		"https://www.googleapis.com/auth/documents",
   124  		"https://www.googleapis.com/auth/documents.readonly",
   125  		"https://www.googleapis.com/auth/drive",
   126  		"https://www.googleapis.com/auth/drive.file",
   127  		"https://www.googleapis.com/auth/drive.readonly",
   128  	)
   129  	// NOTE: prepend, so we don't override user-specified scopes.
   130  	opts = append([]option.ClientOption{scopesOption}, opts...)
   131  	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
   132  	opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
   133  	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
   134  	opts = append(opts, internaloption.EnableNewAuthLibrary())
   135  	client, endpoint, err := htransport.NewClient(ctx, opts...)
   136  	if err != nil {
   137  		return nil, err
   138  	}
   139  	s, err := New(client)
   140  	if err != nil {
   141  		return nil, err
   142  	}
   143  	if endpoint != "" {
   144  		s.BasePath = endpoint
   145  	}
   146  	return s, nil
   147  }
   148  
   149  // New creates a new Service. It uses the provided http.Client for requests.
   150  //
   151  // Deprecated: please use NewService instead.
   152  // To provide a custom HTTP client, use option.WithHTTPClient.
   153  // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
   154  func New(client *http.Client) (*Service, error) {
   155  	if client == nil {
   156  		return nil, errors.New("client is nil")
   157  	}
   158  	s := &Service{client: client, BasePath: basePath}
   159  	s.Documents = NewDocumentsService(s)
   160  	return s, nil
   161  }
   162  
   163  type Service struct {
   164  	client    *http.Client
   165  	BasePath  string // API endpoint base URL
   166  	UserAgent string // optional additional User-Agent fragment
   167  
   168  	Documents *DocumentsService
   169  }
   170  
   171  func (s *Service) userAgent() string {
   172  	if s.UserAgent == "" {
   173  		return googleapi.UserAgent
   174  	}
   175  	return googleapi.UserAgent + " " + s.UserAgent
   176  }
   177  
   178  func NewDocumentsService(s *Service) *DocumentsService {
   179  	rs := &DocumentsService{s: s}
   180  	return rs
   181  }
   182  
   183  type DocumentsService struct {
   184  	s *Service
   185  }
   186  
   187  // AutoText: A ParagraphElement representing a spot in the text that's
   188  // dynamically replaced with content that can change over time, like a page
   189  // number.
   190  type AutoText struct {
   191  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
   192  	// no suggested deletions of this content.
   193  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
   194  	// SuggestedInsertionIds: The suggested insertion IDs. An AutoText may have
   195  	// multiple insertion IDs if it's a nested suggested change. If empty, then
   196  	// this is not a suggested insertion.
   197  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
   198  	// SuggestedTextStyleChanges: The suggested text style changes to this
   199  	// AutoText, keyed by suggestion ID.
   200  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
   201  	// TextStyle: The text style of this AutoText.
   202  	TextStyle *TextStyle `json:"textStyle,omitempty"`
   203  	// Type: The type of this auto text.
   204  	//
   205  	// Possible values:
   206  	//   "TYPE_UNSPECIFIED" - An unspecified auto text type.
   207  	//   "PAGE_NUMBER" - Type for auto text that represents the current page
   208  	// number.
   209  	//   "PAGE_COUNT" - Type for auto text that represents the total number of
   210  	// pages in the document.
   211  	Type string `json:"type,omitempty"`
   212  	// ForceSendFields is a list of field names (e.g. "SuggestedDeletionIds") to
   213  	// unconditionally include in API requests. By default, fields with empty or
   214  	// default values are omitted from API requests. See
   215  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   216  	// details.
   217  	ForceSendFields []string `json:"-"`
   218  	// NullFields is a list of field names (e.g. "SuggestedDeletionIds") to include
   219  	// in API requests with the JSON null value. By default, fields with empty
   220  	// values are omitted from API requests. See
   221  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   222  	NullFields []string `json:"-"`
   223  }
   224  
   225  func (s *AutoText) MarshalJSON() ([]byte, error) {
   226  	type NoMethod AutoText
   227  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   228  }
   229  
   230  // Background: Represents the background of a document.
   231  type Background struct {
   232  	// Color: The background color.
   233  	Color *OptionalColor `json:"color,omitempty"`
   234  	// ForceSendFields is a list of field names (e.g. "Color") to unconditionally
   235  	// include in API requests. By default, fields with empty or default values are
   236  	// omitted from API requests. See
   237  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   238  	// details.
   239  	ForceSendFields []string `json:"-"`
   240  	// NullFields is a list of field names (e.g. "Color") to include in API
   241  	// requests with the JSON null value. By default, fields with empty values are
   242  	// omitted from API requests. See
   243  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   244  	NullFields []string `json:"-"`
   245  }
   246  
   247  func (s *Background) MarshalJSON() ([]byte, error) {
   248  	type NoMethod Background
   249  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   250  }
   251  
   252  // BackgroundSuggestionState: A mask that indicates which of the fields on the
   253  // base Background have been changed in this suggestion. For any field set to
   254  // true, the Backgound has a new suggested value.
   255  type BackgroundSuggestionState struct {
   256  	// BackgroundColorSuggested: Indicates whether the current background color has
   257  	// been modified in this suggestion.
   258  	BackgroundColorSuggested bool `json:"backgroundColorSuggested,omitempty"`
   259  	// ForceSendFields is a list of field names (e.g. "BackgroundColorSuggested")
   260  	// to unconditionally include in API requests. By default, fields with empty or
   261  	// default values are omitted from API requests. See
   262  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   263  	// details.
   264  	ForceSendFields []string `json:"-"`
   265  	// NullFields is a list of field names (e.g. "BackgroundColorSuggested") to
   266  	// include in API requests with the JSON null value. By default, fields with
   267  	// empty values are omitted from API requests. See
   268  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   269  	NullFields []string `json:"-"`
   270  }
   271  
   272  func (s *BackgroundSuggestionState) MarshalJSON() ([]byte, error) {
   273  	type NoMethod BackgroundSuggestionState
   274  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   275  }
   276  
   277  // BatchUpdateDocumentRequest: Request message for BatchUpdateDocument.
   278  type BatchUpdateDocumentRequest struct {
   279  	// Requests: A list of updates to apply to the document.
   280  	Requests []*Request `json:"requests,omitempty"`
   281  	// WriteControl: Provides control over how write requests are executed.
   282  	WriteControl *WriteControl `json:"writeControl,omitempty"`
   283  	// ForceSendFields is a list of field names (e.g. "Requests") to
   284  	// unconditionally include in API requests. By default, fields with empty or
   285  	// default values are omitted from API requests. See
   286  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   287  	// details.
   288  	ForceSendFields []string `json:"-"`
   289  	// NullFields is a list of field names (e.g. "Requests") to include in API
   290  	// requests with the JSON null value. By default, fields with empty values are
   291  	// omitted from API requests. See
   292  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   293  	NullFields []string `json:"-"`
   294  }
   295  
   296  func (s *BatchUpdateDocumentRequest) MarshalJSON() ([]byte, error) {
   297  	type NoMethod BatchUpdateDocumentRequest
   298  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   299  }
   300  
   301  // BatchUpdateDocumentResponse: Response message from a BatchUpdateDocument
   302  // request.
   303  type BatchUpdateDocumentResponse struct {
   304  	// DocumentId: The ID of the document to which the updates were applied to.
   305  	DocumentId string `json:"documentId,omitempty"`
   306  	// Replies: The reply of the updates. This maps 1:1 with the updates, although
   307  	// replies to some requests may be empty.
   308  	Replies []*Response `json:"replies,omitempty"`
   309  	// WriteControl: The updated write control after applying the request.
   310  	WriteControl *WriteControl `json:"writeControl,omitempty"`
   311  
   312  	// ServerResponse contains the HTTP response code and headers from the server.
   313  	googleapi.ServerResponse `json:"-"`
   314  	// ForceSendFields is a list of field names (e.g. "DocumentId") to
   315  	// unconditionally include in API requests. By default, fields with empty or
   316  	// default values are omitted from API requests. See
   317  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   318  	// details.
   319  	ForceSendFields []string `json:"-"`
   320  	// NullFields is a list of field names (e.g. "DocumentId") to include in API
   321  	// requests with the JSON null value. By default, fields with empty values are
   322  	// omitted from API requests. See
   323  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   324  	NullFields []string `json:"-"`
   325  }
   326  
   327  func (s *BatchUpdateDocumentResponse) MarshalJSON() ([]byte, error) {
   328  	type NoMethod BatchUpdateDocumentResponse
   329  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   330  }
   331  
   332  // Body: The document body. The body typically contains the full document
   333  // contents except for headers, footers, and footnotes.
   334  type Body struct {
   335  	// Content: The contents of the body. The indexes for the body's content begin
   336  	// at zero.
   337  	Content []*StructuralElement `json:"content,omitempty"`
   338  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
   339  	// include in API requests. By default, fields with empty or default values are
   340  	// omitted from API requests. See
   341  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   342  	// details.
   343  	ForceSendFields []string `json:"-"`
   344  	// NullFields is a list of field names (e.g. "Content") to include in API
   345  	// requests with the JSON null value. By default, fields with empty values are
   346  	// omitted from API requests. See
   347  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   348  	NullFields []string `json:"-"`
   349  }
   350  
   351  func (s *Body) MarshalJSON() ([]byte, error) {
   352  	type NoMethod Body
   353  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   354  }
   355  
   356  // Bullet: Describes the bullet of a paragraph.
   357  type Bullet struct {
   358  	// ListId: The ID of the list this paragraph belongs to.
   359  	ListId string `json:"listId,omitempty"`
   360  	// NestingLevel: The nesting level of this paragraph in the list.
   361  	NestingLevel int64 `json:"nestingLevel,omitempty"`
   362  	// TextStyle: The paragraph-specific text style applied to this bullet.
   363  	TextStyle *TextStyle `json:"textStyle,omitempty"`
   364  	// ForceSendFields is a list of field names (e.g. "ListId") to unconditionally
   365  	// include in API requests. By default, fields with empty or default values are
   366  	// omitted from API requests. See
   367  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   368  	// details.
   369  	ForceSendFields []string `json:"-"`
   370  	// NullFields is a list of field names (e.g. "ListId") to include in API
   371  	// requests with the JSON null value. By default, fields with empty values are
   372  	// omitted from API requests. See
   373  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   374  	NullFields []string `json:"-"`
   375  }
   376  
   377  func (s *Bullet) MarshalJSON() ([]byte, error) {
   378  	type NoMethod Bullet
   379  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   380  }
   381  
   382  // BulletSuggestionState: A mask that indicates which of the fields on the base
   383  // Bullet have been changed in this suggestion. For any field set to true,
   384  // there's a new suggested value.
   385  type BulletSuggestionState struct {
   386  	// ListIdSuggested: Indicates if there was a suggested change to the list_id.
   387  	ListIdSuggested bool `json:"listIdSuggested,omitempty"`
   388  	// NestingLevelSuggested: Indicates if there was a suggested change to the
   389  	// nesting_level.
   390  	NestingLevelSuggested bool `json:"nestingLevelSuggested,omitempty"`
   391  	// TextStyleSuggestionState: A mask that indicates which of the fields in text
   392  	// style have been changed in this suggestion.
   393  	TextStyleSuggestionState *TextStyleSuggestionState `json:"textStyleSuggestionState,omitempty"`
   394  	// ForceSendFields is a list of field names (e.g. "ListIdSuggested") to
   395  	// unconditionally include in API requests. By default, fields with empty or
   396  	// default values are omitted from API requests. See
   397  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   398  	// details.
   399  	ForceSendFields []string `json:"-"`
   400  	// NullFields is a list of field names (e.g. "ListIdSuggested") to include in
   401  	// API requests with the JSON null value. By default, fields with empty values
   402  	// are omitted from API requests. See
   403  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   404  	NullFields []string `json:"-"`
   405  }
   406  
   407  func (s *BulletSuggestionState) MarshalJSON() ([]byte, error) {
   408  	type NoMethod BulletSuggestionState
   409  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   410  }
   411  
   412  // Color: A solid color.
   413  type Color struct {
   414  	// RgbColor: The RGB color value.
   415  	RgbColor *RgbColor `json:"rgbColor,omitempty"`
   416  	// ForceSendFields is a list of field names (e.g. "RgbColor") to
   417  	// unconditionally include in API requests. By default, fields with empty or
   418  	// default values are omitted from API requests. See
   419  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   420  	// details.
   421  	ForceSendFields []string `json:"-"`
   422  	// NullFields is a list of field names (e.g. "RgbColor") to include in API
   423  	// requests with the JSON null value. By default, fields with empty values are
   424  	// omitted from API requests. See
   425  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   426  	NullFields []string `json:"-"`
   427  }
   428  
   429  func (s *Color) MarshalJSON() ([]byte, error) {
   430  	type NoMethod Color
   431  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   432  }
   433  
   434  // ColumnBreak: A ParagraphElement representing a column break. A column break
   435  // makes the subsequent text start at the top of the next column.
   436  type ColumnBreak struct {
   437  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
   438  	// no suggested deletions of this content.
   439  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
   440  	// SuggestedInsertionIds: The suggested insertion IDs. A ColumnBreak may have
   441  	// multiple insertion IDs if it's a nested suggested change. If empty, then
   442  	// this is not a suggested insertion.
   443  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
   444  	// SuggestedTextStyleChanges: The suggested text style changes to this
   445  	// ColumnBreak, keyed by suggestion ID.
   446  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
   447  	// TextStyle: The text style of this ColumnBreak. Similar to text content, like
   448  	// text runs and footnote references, the text style of a column break can
   449  	// affect content layout as well as the styling of text inserted next to it.
   450  	TextStyle *TextStyle `json:"textStyle,omitempty"`
   451  	// ForceSendFields is a list of field names (e.g. "SuggestedDeletionIds") to
   452  	// unconditionally include in API requests. By default, fields with empty or
   453  	// default values are omitted from API requests. See
   454  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   455  	// details.
   456  	ForceSendFields []string `json:"-"`
   457  	// NullFields is a list of field names (e.g. "SuggestedDeletionIds") to include
   458  	// in API requests with the JSON null value. By default, fields with empty
   459  	// values are omitted from API requests. See
   460  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   461  	NullFields []string `json:"-"`
   462  }
   463  
   464  func (s *ColumnBreak) MarshalJSON() ([]byte, error) {
   465  	type NoMethod ColumnBreak
   466  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   467  }
   468  
   469  // CreateFooterRequest: Creates a Footer. The new footer is applied to the
   470  // SectionStyle at the location of the SectionBreak if specified, otherwise it
   471  // is applied to the DocumentStyle. If a footer of the specified type already
   472  // exists, a 400 bad request error is returned.
   473  type CreateFooterRequest struct {
   474  	// SectionBreakLocation: The location of the SectionBreak immediately preceding
   475  	// the section whose SectionStyle this footer should belong to. If this is
   476  	// unset or refers to the first section break in the document, the footer
   477  	// applies to the document style.
   478  	SectionBreakLocation *Location `json:"sectionBreakLocation,omitempty"`
   479  	// Type: The type of footer to create.
   480  	//
   481  	// Possible values:
   482  	//   "HEADER_FOOTER_TYPE_UNSPECIFIED" - The header/footer type is unspecified.
   483  	//   "DEFAULT" - A default header/footer.
   484  	Type string `json:"type,omitempty"`
   485  	// ForceSendFields is a list of field names (e.g. "SectionBreakLocation") to
   486  	// unconditionally include in API requests. By default, fields with empty or
   487  	// default values are omitted from API requests. See
   488  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   489  	// details.
   490  	ForceSendFields []string `json:"-"`
   491  	// NullFields is a list of field names (e.g. "SectionBreakLocation") to include
   492  	// in API requests with the JSON null value. By default, fields with empty
   493  	// values are omitted from API requests. See
   494  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   495  	NullFields []string `json:"-"`
   496  }
   497  
   498  func (s *CreateFooterRequest) MarshalJSON() ([]byte, error) {
   499  	type NoMethod CreateFooterRequest
   500  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   501  }
   502  
   503  // CreateFooterResponse: The result of creating a footer.
   504  type CreateFooterResponse struct {
   505  	// FooterId: The ID of the created footer.
   506  	FooterId string `json:"footerId,omitempty"`
   507  	// ForceSendFields is a list of field names (e.g. "FooterId") to
   508  	// unconditionally include in API requests. By default, fields with empty or
   509  	// default values are omitted from API requests. See
   510  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   511  	// details.
   512  	ForceSendFields []string `json:"-"`
   513  	// NullFields is a list of field names (e.g. "FooterId") to include in API
   514  	// requests with the JSON null value. By default, fields with empty values are
   515  	// omitted from API requests. See
   516  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   517  	NullFields []string `json:"-"`
   518  }
   519  
   520  func (s *CreateFooterResponse) MarshalJSON() ([]byte, error) {
   521  	type NoMethod CreateFooterResponse
   522  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   523  }
   524  
   525  // CreateFootnoteRequest: Creates a Footnote segment and inserts a new
   526  // FootnoteReference to it at the given location. The new Footnote segment will
   527  // contain a space followed by a newline character.
   528  type CreateFootnoteRequest struct {
   529  	// EndOfSegmentLocation: Inserts the footnote reference at the end of the
   530  	// document body. Footnote references cannot be inserted inside a header,
   531  	// footer or footnote. Since footnote references can only be inserted in the
   532  	// body, the segment ID field must be empty.
   533  	EndOfSegmentLocation *EndOfSegmentLocation `json:"endOfSegmentLocation,omitempty"`
   534  	// Location: Inserts the footnote reference at a specific index in the
   535  	// document. The footnote reference must be inserted inside the bounds of an
   536  	// existing Paragraph. For instance, it cannot be inserted at a table's start
   537  	// index (i.e. between the table and its preceding paragraph). Footnote
   538  	// references cannot be inserted inside an equation, header, footer or
   539  	// footnote. Since footnote references can only be inserted in the body, the
   540  	// segment ID field must be empty.
   541  	Location *Location `json:"location,omitempty"`
   542  	// ForceSendFields is a list of field names (e.g. "EndOfSegmentLocation") to
   543  	// unconditionally include in API requests. By default, fields with empty or
   544  	// default values are omitted from API requests. See
   545  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   546  	// details.
   547  	ForceSendFields []string `json:"-"`
   548  	// NullFields is a list of field names (e.g. "EndOfSegmentLocation") to include
   549  	// in API requests with the JSON null value. By default, fields with empty
   550  	// values are omitted from API requests. See
   551  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   552  	NullFields []string `json:"-"`
   553  }
   554  
   555  func (s *CreateFootnoteRequest) MarshalJSON() ([]byte, error) {
   556  	type NoMethod CreateFootnoteRequest
   557  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   558  }
   559  
   560  // CreateFootnoteResponse: The result of creating a footnote.
   561  type CreateFootnoteResponse struct {
   562  	// FootnoteId: The ID of the created footnote.
   563  	FootnoteId string `json:"footnoteId,omitempty"`
   564  	// ForceSendFields is a list of field names (e.g. "FootnoteId") to
   565  	// unconditionally include in API requests. By default, fields with empty or
   566  	// default values are omitted from API requests. See
   567  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   568  	// details.
   569  	ForceSendFields []string `json:"-"`
   570  	// NullFields is a list of field names (e.g. "FootnoteId") to include in API
   571  	// requests with the JSON null value. By default, fields with empty values are
   572  	// omitted from API requests. See
   573  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   574  	NullFields []string `json:"-"`
   575  }
   576  
   577  func (s *CreateFootnoteResponse) MarshalJSON() ([]byte, error) {
   578  	type NoMethod CreateFootnoteResponse
   579  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   580  }
   581  
   582  // CreateHeaderRequest: Creates a Header. The new header is applied to the
   583  // SectionStyle at the location of the SectionBreak if specified, otherwise it
   584  // is applied to the DocumentStyle. If a header of the specified type already
   585  // exists, a 400 bad request error is returned.
   586  type CreateHeaderRequest struct {
   587  	// SectionBreakLocation: The location of the SectionBreak which begins the
   588  	// section this header should belong to. If `section_break_location' is unset
   589  	// or if it refers to the first section break in the document body, the header
   590  	// applies to the DocumentStyle
   591  	SectionBreakLocation *Location `json:"sectionBreakLocation,omitempty"`
   592  	// Type: The type of header to create.
   593  	//
   594  	// Possible values:
   595  	//   "HEADER_FOOTER_TYPE_UNSPECIFIED" - The header/footer type is unspecified.
   596  	//   "DEFAULT" - A default header/footer.
   597  	Type string `json:"type,omitempty"`
   598  	// ForceSendFields is a list of field names (e.g. "SectionBreakLocation") to
   599  	// unconditionally include in API requests. By default, fields with empty or
   600  	// default values are omitted from API requests. See
   601  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   602  	// details.
   603  	ForceSendFields []string `json:"-"`
   604  	// NullFields is a list of field names (e.g. "SectionBreakLocation") to include
   605  	// in API requests with the JSON null value. By default, fields with empty
   606  	// values are omitted from API requests. See
   607  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   608  	NullFields []string `json:"-"`
   609  }
   610  
   611  func (s *CreateHeaderRequest) MarshalJSON() ([]byte, error) {
   612  	type NoMethod CreateHeaderRequest
   613  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   614  }
   615  
   616  // CreateHeaderResponse: The result of creating a header.
   617  type CreateHeaderResponse struct {
   618  	// HeaderId: The ID of the created header.
   619  	HeaderId string `json:"headerId,omitempty"`
   620  	// ForceSendFields is a list of field names (e.g. "HeaderId") to
   621  	// unconditionally include in API requests. By default, fields with empty or
   622  	// default values are omitted from API requests. See
   623  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   624  	// details.
   625  	ForceSendFields []string `json:"-"`
   626  	// NullFields is a list of field names (e.g. "HeaderId") to include in API
   627  	// requests with the JSON null value. By default, fields with empty values are
   628  	// omitted from API requests. See
   629  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   630  	NullFields []string `json:"-"`
   631  }
   632  
   633  func (s *CreateHeaderResponse) MarshalJSON() ([]byte, error) {
   634  	type NoMethod CreateHeaderResponse
   635  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   636  }
   637  
   638  // CreateNamedRangeRequest: Creates a NamedRange referencing the given range.
   639  type CreateNamedRangeRequest struct {
   640  	// Name: The name of the NamedRange. Names do not need to be unique. Names must
   641  	// be at least 1 character and no more than 256 characters, measured in UTF-16
   642  	// code units.
   643  	Name string `json:"name,omitempty"`
   644  	// Range: The range to apply the name to.
   645  	Range *Range `json:"range,omitempty"`
   646  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
   647  	// include in API requests. By default, fields with empty or default values are
   648  	// omitted from API requests. See
   649  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   650  	// details.
   651  	ForceSendFields []string `json:"-"`
   652  	// NullFields is a list of field names (e.g. "Name") to include in API requests
   653  	// with the JSON null value. By default, fields with empty values are omitted
   654  	// from API requests. See
   655  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   656  	NullFields []string `json:"-"`
   657  }
   658  
   659  func (s *CreateNamedRangeRequest) MarshalJSON() ([]byte, error) {
   660  	type NoMethod CreateNamedRangeRequest
   661  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   662  }
   663  
   664  // CreateNamedRangeResponse: The result of creating a named range.
   665  type CreateNamedRangeResponse struct {
   666  	// NamedRangeId: The ID of the created named range.
   667  	NamedRangeId string `json:"namedRangeId,omitempty"`
   668  	// ForceSendFields is a list of field names (e.g. "NamedRangeId") to
   669  	// unconditionally include in API requests. By default, fields with empty or
   670  	// default values are omitted from API requests. See
   671  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   672  	// details.
   673  	ForceSendFields []string `json:"-"`
   674  	// NullFields is a list of field names (e.g. "NamedRangeId") to include in API
   675  	// requests with the JSON null value. By default, fields with empty values are
   676  	// omitted from API requests. See
   677  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   678  	NullFields []string `json:"-"`
   679  }
   680  
   681  func (s *CreateNamedRangeResponse) MarshalJSON() ([]byte, error) {
   682  	type NoMethod CreateNamedRangeResponse
   683  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   684  }
   685  
   686  // CreateParagraphBulletsRequest: Creates bullets for all of the paragraphs
   687  // that overlap with the given range. The nesting level of each paragraph will
   688  // be determined by counting leading tabs in front of each paragraph. To avoid
   689  // excess space between the bullet and the corresponding paragraph, these
   690  // leading tabs are removed by this request. This may change the indices of
   691  // parts of the text. If the paragraph immediately before paragraphs being
   692  // updated is in a list with a matching preset, the paragraphs being updated
   693  // are added to that preceding list.
   694  type CreateParagraphBulletsRequest struct {
   695  	// BulletPreset: The kinds of bullet glyphs to be used.
   696  	//
   697  	// Possible values:
   698  	//   "BULLET_GLYPH_PRESET_UNSPECIFIED" - The bullet glyph preset is
   699  	// unspecified.
   700  	//   "BULLET_DISC_CIRCLE_SQUARE" - A bulleted list with a `DISC`, `CIRCLE` and
   701  	// `SQUARE` bullet glyph for the first 3 list nesting levels.
   702  	//   "BULLET_DIAMONDX_ARROW3D_SQUARE" - A bulleted list with a `DIAMONDX`,
   703  	// `ARROW3D` and `SQUARE` bullet glyph for the first 3 list nesting levels.
   704  	//   "BULLET_CHECKBOX" - A bulleted list with `CHECKBOX` bullet glyphs for all
   705  	// list nesting levels.
   706  	//   "BULLET_ARROW_DIAMOND_DISC" - A bulleted list with a `ARROW`, `DIAMOND`
   707  	// and `DISC` bullet glyph for the first 3 list nesting levels.
   708  	//   "BULLET_STAR_CIRCLE_SQUARE" - A bulleted list with a `STAR`, `CIRCLE` and
   709  	// `SQUARE` bullet glyph for the first 3 list nesting levels.
   710  	//   "BULLET_ARROW3D_CIRCLE_SQUARE" - A bulleted list with a `ARROW3D`,
   711  	// `CIRCLE` and `SQUARE` bullet glyph for the first 3 list nesting levels.
   712  	//   "BULLET_LEFTTRIANGLE_DIAMOND_DISC" - A bulleted list with a
   713  	// `LEFTTRIANGLE`, `DIAMOND` and `DISC` bullet glyph for the first 3 list
   714  	// nesting levels.
   715  	//   "BULLET_DIAMONDX_HOLLOWDIAMOND_SQUARE" - A bulleted list with a
   716  	// `DIAMONDX`, `HOLLOWDIAMOND` and `SQUARE` bullet glyph for the first 3 list
   717  	// nesting levels.
   718  	//   "BULLET_DIAMOND_CIRCLE_SQUARE" - A bulleted list with a `DIAMOND`,
   719  	// `CIRCLE` and `SQUARE` bullet glyph for the first 3 list nesting levels.
   720  	//   "NUMBERED_DECIMAL_ALPHA_ROMAN" - A numbered list with `DECIMAL`, `ALPHA`
   721  	// and `ROMAN` numeric glyphs for the first 3 list nesting levels, followed by
   722  	// periods.
   723  	//   "NUMBERED_DECIMAL_ALPHA_ROMAN_PARENS" - A numbered list with `DECIMAL`,
   724  	// `ALPHA` and `ROMAN` numeric glyphs for the first 3 list nesting levels,
   725  	// followed by parenthesis.
   726  	//   "NUMBERED_DECIMAL_NESTED" - A numbered list with `DECIMAL` numeric glyphs
   727  	// separated by periods, where each nesting level uses the previous nesting
   728  	// level's glyph as a prefix. For example: '1.', '1.1.', '2.', '2.2.'.
   729  	//   "NUMBERED_UPPERALPHA_ALPHA_ROMAN" - A numbered list with `UPPERALPHA`,
   730  	// `ALPHA` and `ROMAN` numeric glyphs for the first 3 list nesting levels,
   731  	// followed by periods.
   732  	//   "NUMBERED_UPPERROMAN_UPPERALPHA_DECIMAL" - A numbered list with
   733  	// `UPPERROMAN`, `UPPERALPHA` and `DECIMAL` numeric glyphs for the first 3 list
   734  	// nesting levels, followed by periods.
   735  	//   "NUMBERED_ZERODECIMAL_ALPHA_ROMAN" - A numbered list with `ZERODECIMAL`,
   736  	// `ALPHA` and `ROMAN` numeric glyphs for the first 3 list nesting levels,
   737  	// followed by periods.
   738  	BulletPreset string `json:"bulletPreset,omitempty"`
   739  	// Range: The range to apply the bullet preset to.
   740  	Range *Range `json:"range,omitempty"`
   741  	// ForceSendFields is a list of field names (e.g. "BulletPreset") to
   742  	// unconditionally include in API requests. By default, fields with empty or
   743  	// default values are omitted from API requests. See
   744  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   745  	// details.
   746  	ForceSendFields []string `json:"-"`
   747  	// NullFields is a list of field names (e.g. "BulletPreset") to include in API
   748  	// requests with the JSON null value. By default, fields with empty values are
   749  	// omitted from API requests. See
   750  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   751  	NullFields []string `json:"-"`
   752  }
   753  
   754  func (s *CreateParagraphBulletsRequest) MarshalJSON() ([]byte, error) {
   755  	type NoMethod CreateParagraphBulletsRequest
   756  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   757  }
   758  
   759  // CropProperties: The crop properties of an image. The crop rectangle is
   760  // represented using fractional offsets from the original content's 4 edges. -
   761  // If the offset is in the interval (0, 1), the corresponding edge of crop
   762  // rectangle is positioned inside of the image's original bounding rectangle. -
   763  // If the offset is negative or greater than 1, the corresponding edge of crop
   764  // rectangle is positioned outside of the image's original bounding rectangle.
   765  // - If all offsets and rotation angle are 0, the image is not cropped.
   766  type CropProperties struct {
   767  	// Angle: The clockwise rotation angle of the crop rectangle around its center,
   768  	// in radians. Rotation is applied after the offsets.
   769  	Angle float64 `json:"angle,omitempty"`
   770  	// OffsetBottom: The offset specifies how far inwards the bottom edge of the
   771  	// crop rectangle is from the bottom edge of the original content as a fraction
   772  	// of the original content's height.
   773  	OffsetBottom float64 `json:"offsetBottom,omitempty"`
   774  	// OffsetLeft: The offset specifies how far inwards the left edge of the crop
   775  	// rectangle is from the left edge of the original content as a fraction of the
   776  	// original content's width.
   777  	OffsetLeft float64 `json:"offsetLeft,omitempty"`
   778  	// OffsetRight: The offset specifies how far inwards the right edge of the crop
   779  	// rectangle is from the right edge of the original content as a fraction of
   780  	// the original content's width.
   781  	OffsetRight float64 `json:"offsetRight,omitempty"`
   782  	// OffsetTop: The offset specifies how far inwards the top edge of the crop
   783  	// rectangle is from the top edge of the original content as a fraction of the
   784  	// original content's height.
   785  	OffsetTop float64 `json:"offsetTop,omitempty"`
   786  	// ForceSendFields is a list of field names (e.g. "Angle") to unconditionally
   787  	// include in API requests. By default, fields with empty or default values are
   788  	// omitted from API requests. See
   789  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   790  	// details.
   791  	ForceSendFields []string `json:"-"`
   792  	// NullFields is a list of field names (e.g. "Angle") to include in API
   793  	// requests with the JSON null value. By default, fields with empty values are
   794  	// omitted from API requests. See
   795  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   796  	NullFields []string `json:"-"`
   797  }
   798  
   799  func (s *CropProperties) MarshalJSON() ([]byte, error) {
   800  	type NoMethod CropProperties
   801  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   802  }
   803  
   804  func (s *CropProperties) UnmarshalJSON(data []byte) error {
   805  	type NoMethod CropProperties
   806  	var s1 struct {
   807  		Angle        gensupport.JSONFloat64 `json:"angle"`
   808  		OffsetBottom gensupport.JSONFloat64 `json:"offsetBottom"`
   809  		OffsetLeft   gensupport.JSONFloat64 `json:"offsetLeft"`
   810  		OffsetRight  gensupport.JSONFloat64 `json:"offsetRight"`
   811  		OffsetTop    gensupport.JSONFloat64 `json:"offsetTop"`
   812  		*NoMethod
   813  	}
   814  	s1.NoMethod = (*NoMethod)(s)
   815  	if err := json.Unmarshal(data, &s1); err != nil {
   816  		return err
   817  	}
   818  	s.Angle = float64(s1.Angle)
   819  	s.OffsetBottom = float64(s1.OffsetBottom)
   820  	s.OffsetLeft = float64(s1.OffsetLeft)
   821  	s.OffsetRight = float64(s1.OffsetRight)
   822  	s.OffsetTop = float64(s1.OffsetTop)
   823  	return nil
   824  }
   825  
   826  // CropPropertiesSuggestionState: A mask that indicates which of the fields on
   827  // the base CropProperties have been changed in this suggestion. For any field
   828  // set to true, there's a new suggested value.
   829  type CropPropertiesSuggestionState struct {
   830  	// AngleSuggested: Indicates if there was a suggested change to angle.
   831  	AngleSuggested bool `json:"angleSuggested,omitempty"`
   832  	// OffsetBottomSuggested: Indicates if there was a suggested change to
   833  	// offset_bottom.
   834  	OffsetBottomSuggested bool `json:"offsetBottomSuggested,omitempty"`
   835  	// OffsetLeftSuggested: Indicates if there was a suggested change to
   836  	// offset_left.
   837  	OffsetLeftSuggested bool `json:"offsetLeftSuggested,omitempty"`
   838  	// OffsetRightSuggested: Indicates if there was a suggested change to
   839  	// offset_right.
   840  	OffsetRightSuggested bool `json:"offsetRightSuggested,omitempty"`
   841  	// OffsetTopSuggested: Indicates if there was a suggested change to offset_top.
   842  	OffsetTopSuggested bool `json:"offsetTopSuggested,omitempty"`
   843  	// ForceSendFields is a list of field names (e.g. "AngleSuggested") to
   844  	// unconditionally include in API requests. By default, fields with empty or
   845  	// default values are omitted from API requests. See
   846  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   847  	// details.
   848  	ForceSendFields []string `json:"-"`
   849  	// NullFields is a list of field names (e.g. "AngleSuggested") to include in
   850  	// API requests with the JSON null value. By default, fields with empty values
   851  	// are omitted from API requests. See
   852  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   853  	NullFields []string `json:"-"`
   854  }
   855  
   856  func (s *CropPropertiesSuggestionState) MarshalJSON() ([]byte, error) {
   857  	type NoMethod CropPropertiesSuggestionState
   858  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   859  }
   860  
   861  // DeleteContentRangeRequest: Deletes content from the document.
   862  type DeleteContentRangeRequest struct {
   863  	// Range: The range of content to delete. Deleting text that crosses a
   864  	// paragraph boundary may result in changes to paragraph styles, lists,
   865  	// positioned objects and bookmarks as the two paragraphs are merged.
   866  	// Attempting to delete certain ranges can result in an invalid document
   867  	// structure in which case a 400 bad request error is returned. Some examples
   868  	// of invalid delete requests include: * Deleting one code unit of a surrogate
   869  	// pair. * Deleting the last newline character of a Body, Header, Footer,
   870  	// Footnote, TableCell or TableOfContents. * Deleting the start or end of a
   871  	// Table, TableOfContents or Equation without deleting the entire element. *
   872  	// Deleting the newline character before a Table, TableOfContents or
   873  	// SectionBreak without deleting the element. * Deleting individual rows or
   874  	// cells of a table. Deleting the content within a table cell is allowed.
   875  	Range *Range `json:"range,omitempty"`
   876  	// ForceSendFields is a list of field names (e.g. "Range") to unconditionally
   877  	// include in API requests. By default, fields with empty or default values are
   878  	// omitted from API requests. See
   879  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   880  	// details.
   881  	ForceSendFields []string `json:"-"`
   882  	// NullFields is a list of field names (e.g. "Range") to include in API
   883  	// requests with the JSON null value. By default, fields with empty values are
   884  	// omitted from API requests. See
   885  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   886  	NullFields []string `json:"-"`
   887  }
   888  
   889  func (s *DeleteContentRangeRequest) MarshalJSON() ([]byte, error) {
   890  	type NoMethod DeleteContentRangeRequest
   891  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   892  }
   893  
   894  // DeleteFooterRequest: Deletes a Footer from the document.
   895  type DeleteFooterRequest struct {
   896  	// FooterId: The id of the footer to delete. If this footer is defined on
   897  	// DocumentStyle, the reference to this footer is removed, resulting in no
   898  	// footer of that type for the first section of the document. If this footer is
   899  	// defined on a SectionStyle, the reference to this footer is removed and the
   900  	// footer of that type is now continued from the previous section.
   901  	FooterId string `json:"footerId,omitempty"`
   902  	// ForceSendFields is a list of field names (e.g. "FooterId") to
   903  	// unconditionally include in API requests. By default, fields with empty or
   904  	// default values are omitted from API requests. See
   905  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   906  	// details.
   907  	ForceSendFields []string `json:"-"`
   908  	// NullFields is a list of field names (e.g. "FooterId") to include in API
   909  	// requests with the JSON null value. By default, fields with empty values are
   910  	// omitted from API requests. See
   911  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   912  	NullFields []string `json:"-"`
   913  }
   914  
   915  func (s *DeleteFooterRequest) MarshalJSON() ([]byte, error) {
   916  	type NoMethod DeleteFooterRequest
   917  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   918  }
   919  
   920  // DeleteHeaderRequest: Deletes a Header from the document.
   921  type DeleteHeaderRequest struct {
   922  	// HeaderId: The id of the header to delete. If this header is defined on
   923  	// DocumentStyle, the reference to this header is removed, resulting in no
   924  	// header of that type for the first section of the document. If this header is
   925  	// defined on a SectionStyle, the reference to this header is removed and the
   926  	// header of that type is now continued from the previous section.
   927  	HeaderId string `json:"headerId,omitempty"`
   928  	// ForceSendFields is a list of field names (e.g. "HeaderId") to
   929  	// unconditionally include in API requests. By default, fields with empty or
   930  	// default values are omitted from API requests. See
   931  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   932  	// details.
   933  	ForceSendFields []string `json:"-"`
   934  	// NullFields is a list of field names (e.g. "HeaderId") to include in API
   935  	// requests with the JSON null value. By default, fields with empty values are
   936  	// omitted from API requests. See
   937  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   938  	NullFields []string `json:"-"`
   939  }
   940  
   941  func (s *DeleteHeaderRequest) MarshalJSON() ([]byte, error) {
   942  	type NoMethod DeleteHeaderRequest
   943  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   944  }
   945  
   946  // DeleteNamedRangeRequest: Deletes a NamedRange.
   947  type DeleteNamedRangeRequest struct {
   948  	// Name: The name of the range(s) to delete. All named ranges with the given
   949  	// name will be deleted.
   950  	Name string `json:"name,omitempty"`
   951  	// NamedRangeId: The ID of the named range to delete.
   952  	NamedRangeId string `json:"namedRangeId,omitempty"`
   953  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
   954  	// include in API requests. By default, fields with empty or default values are
   955  	// omitted from API requests. See
   956  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   957  	// details.
   958  	ForceSendFields []string `json:"-"`
   959  	// NullFields is a list of field names (e.g. "Name") to include in API requests
   960  	// with the JSON null value. By default, fields with empty values are omitted
   961  	// from API requests. See
   962  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   963  	NullFields []string `json:"-"`
   964  }
   965  
   966  func (s *DeleteNamedRangeRequest) MarshalJSON() ([]byte, error) {
   967  	type NoMethod DeleteNamedRangeRequest
   968  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   969  }
   970  
   971  // DeleteParagraphBulletsRequest: Deletes bullets from all of the paragraphs
   972  // that overlap with the given range. The nesting level of each paragraph will
   973  // be visually preserved by adding indent to the start of the corresponding
   974  // paragraph.
   975  type DeleteParagraphBulletsRequest struct {
   976  	// Range: The range to delete bullets from.
   977  	Range *Range `json:"range,omitempty"`
   978  	// ForceSendFields is a list of field names (e.g. "Range") to unconditionally
   979  	// include in API requests. By default, fields with empty or default values are
   980  	// omitted from API requests. See
   981  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
   982  	// details.
   983  	ForceSendFields []string `json:"-"`
   984  	// NullFields is a list of field names (e.g. "Range") to include in API
   985  	// requests with the JSON null value. By default, fields with empty values are
   986  	// omitted from API requests. See
   987  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
   988  	NullFields []string `json:"-"`
   989  }
   990  
   991  func (s *DeleteParagraphBulletsRequest) MarshalJSON() ([]byte, error) {
   992  	type NoMethod DeleteParagraphBulletsRequest
   993  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
   994  }
   995  
   996  // DeletePositionedObjectRequest: Deletes a PositionedObject from the document.
   997  type DeletePositionedObjectRequest struct {
   998  	// ObjectId: The ID of the positioned object to delete.
   999  	ObjectId string `json:"objectId,omitempty"`
  1000  	// ForceSendFields is a list of field names (e.g. "ObjectId") to
  1001  	// unconditionally include in API requests. By default, fields with empty or
  1002  	// default values are omitted from API requests. See
  1003  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1004  	// details.
  1005  	ForceSendFields []string `json:"-"`
  1006  	// NullFields is a list of field names (e.g. "ObjectId") to include in API
  1007  	// requests with the JSON null value. By default, fields with empty values are
  1008  	// omitted from API requests. See
  1009  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1010  	NullFields []string `json:"-"`
  1011  }
  1012  
  1013  func (s *DeletePositionedObjectRequest) MarshalJSON() ([]byte, error) {
  1014  	type NoMethod DeletePositionedObjectRequest
  1015  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1016  }
  1017  
  1018  // DeleteTableColumnRequest: Deletes a column from a table.
  1019  type DeleteTableColumnRequest struct {
  1020  	// TableCellLocation: The reference table cell location from which the column
  1021  	// will be deleted. The column this cell spans will be deleted. If this is a
  1022  	// merged cell that spans multiple columns, all columns that the cell spans
  1023  	// will be deleted. If no columns remain in the table after this deletion, the
  1024  	// whole table is deleted.
  1025  	TableCellLocation *TableCellLocation `json:"tableCellLocation,omitempty"`
  1026  	// ForceSendFields is a list of field names (e.g. "TableCellLocation") to
  1027  	// unconditionally include in API requests. By default, fields with empty or
  1028  	// default values are omitted from API requests. See
  1029  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1030  	// details.
  1031  	ForceSendFields []string `json:"-"`
  1032  	// NullFields is a list of field names (e.g. "TableCellLocation") to include in
  1033  	// API requests with the JSON null value. By default, fields with empty values
  1034  	// are omitted from API requests. See
  1035  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1036  	NullFields []string `json:"-"`
  1037  }
  1038  
  1039  func (s *DeleteTableColumnRequest) MarshalJSON() ([]byte, error) {
  1040  	type NoMethod DeleteTableColumnRequest
  1041  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1042  }
  1043  
  1044  // DeleteTableRowRequest: Deletes a row from a table.
  1045  type DeleteTableRowRequest struct {
  1046  	// TableCellLocation: The reference table cell location from which the row will
  1047  	// be deleted. The row this cell spans will be deleted. If this is a merged
  1048  	// cell that spans multiple rows, all rows that the cell spans will be deleted.
  1049  	// If no rows remain in the table after this deletion, the whole table is
  1050  	// deleted.
  1051  	TableCellLocation *TableCellLocation `json:"tableCellLocation,omitempty"`
  1052  	// ForceSendFields is a list of field names (e.g. "TableCellLocation") to
  1053  	// unconditionally include in API requests. By default, fields with empty or
  1054  	// default values are omitted from API requests. See
  1055  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1056  	// details.
  1057  	ForceSendFields []string `json:"-"`
  1058  	// NullFields is a list of field names (e.g. "TableCellLocation") to include in
  1059  	// API requests with the JSON null value. By default, fields with empty values
  1060  	// are omitted from API requests. See
  1061  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1062  	NullFields []string `json:"-"`
  1063  }
  1064  
  1065  func (s *DeleteTableRowRequest) MarshalJSON() ([]byte, error) {
  1066  	type NoMethod DeleteTableRowRequest
  1067  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1068  }
  1069  
  1070  // Dimension: A magnitude in a single direction in the specified units.
  1071  type Dimension struct {
  1072  	// Magnitude: The magnitude.
  1073  	Magnitude float64 `json:"magnitude,omitempty"`
  1074  	// Unit: The units for magnitude.
  1075  	//
  1076  	// Possible values:
  1077  	//   "UNIT_UNSPECIFIED" - The units are unknown.
  1078  	//   "PT" - A point, 1/72 of an inch.
  1079  	Unit string `json:"unit,omitempty"`
  1080  	// ForceSendFields is a list of field names (e.g. "Magnitude") to
  1081  	// unconditionally include in API requests. By default, fields with empty or
  1082  	// default values are omitted from API requests. See
  1083  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1084  	// details.
  1085  	ForceSendFields []string `json:"-"`
  1086  	// NullFields is a list of field names (e.g. "Magnitude") to include in API
  1087  	// requests with the JSON null value. By default, fields with empty values are
  1088  	// omitted from API requests. See
  1089  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1090  	NullFields []string `json:"-"`
  1091  }
  1092  
  1093  func (s *Dimension) MarshalJSON() ([]byte, error) {
  1094  	type NoMethod Dimension
  1095  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1096  }
  1097  
  1098  func (s *Dimension) UnmarshalJSON(data []byte) error {
  1099  	type NoMethod Dimension
  1100  	var s1 struct {
  1101  		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
  1102  		*NoMethod
  1103  	}
  1104  	s1.NoMethod = (*NoMethod)(s)
  1105  	if err := json.Unmarshal(data, &s1); err != nil {
  1106  		return err
  1107  	}
  1108  	s.Magnitude = float64(s1.Magnitude)
  1109  	return nil
  1110  }
  1111  
  1112  // Document: A Google Docs document.
  1113  type Document struct {
  1114  	// Body: Output only. The main body of the document.
  1115  	Body *Body `json:"body,omitempty"`
  1116  	// DocumentId: Output only. The ID of the document.
  1117  	DocumentId string `json:"documentId,omitempty"`
  1118  	// DocumentStyle: Output only. The style of the document.
  1119  	DocumentStyle *DocumentStyle `json:"documentStyle,omitempty"`
  1120  	// Footers: Output only. The footers in the document, keyed by footer ID.
  1121  	Footers map[string]Footer `json:"footers,omitempty"`
  1122  	// Footnotes: Output only. The footnotes in the document, keyed by footnote ID.
  1123  	Footnotes map[string]Footnote `json:"footnotes,omitempty"`
  1124  	// Headers: Output only. The headers in the document, keyed by header ID.
  1125  	Headers map[string]Header `json:"headers,omitempty"`
  1126  	// InlineObjects: Output only. The inline objects in the document, keyed by
  1127  	// object ID.
  1128  	InlineObjects map[string]InlineObject `json:"inlineObjects,omitempty"`
  1129  	// Lists: Output only. The lists in the document, keyed by list ID.
  1130  	Lists map[string]List `json:"lists,omitempty"`
  1131  	// NamedRanges: Output only. The named ranges in the document, keyed by name.
  1132  	NamedRanges map[string]NamedRanges `json:"namedRanges,omitempty"`
  1133  	// NamedStyles: Output only. The named styles of the document.
  1134  	NamedStyles *NamedStyles `json:"namedStyles,omitempty"`
  1135  	// PositionedObjects: Output only. The positioned objects in the document,
  1136  	// keyed by object ID.
  1137  	PositionedObjects map[string]PositionedObject `json:"positionedObjects,omitempty"`
  1138  	// RevisionId: Output only. The revision ID of the document. Can be used in
  1139  	// update requests to specify which revision of a document to apply updates to
  1140  	// and how the request should behave if the document has been edited since that
  1141  	// revision. Only populated if the user has edit access to the document. The
  1142  	// revision ID is not a sequential number but an opaque string. The format of
  1143  	// the revision ID might change over time. A returned revision ID is only
  1144  	// guaranteed to be valid for 24 hours after it has been returned and cannot be
  1145  	// shared across users. If the revision ID is unchanged between calls, then the
  1146  	// document has not changed. Conversely, a changed ID (for the same document
  1147  	// and user) usually means the document has been updated. However, a changed ID
  1148  	// can also be due to internal factors such as ID format changes.
  1149  	RevisionId string `json:"revisionId,omitempty"`
  1150  	// SuggestedDocumentStyleChanges: Output only. The suggested changes to the
  1151  	// style of the document, keyed by suggestion ID.
  1152  	SuggestedDocumentStyleChanges map[string]SuggestedDocumentStyle `json:"suggestedDocumentStyleChanges,omitempty"`
  1153  	// SuggestedNamedStylesChanges: Output only. The suggested changes to the named
  1154  	// styles of the document, keyed by suggestion ID.
  1155  	SuggestedNamedStylesChanges map[string]SuggestedNamedStyles `json:"suggestedNamedStylesChanges,omitempty"`
  1156  	// SuggestionsViewMode: Output only. The suggestions view mode applied to the
  1157  	// document. Note: When editing a document, changes must be based on a document
  1158  	// with SUGGESTIONS_INLINE.
  1159  	//
  1160  	// Possible values:
  1161  	//   "DEFAULT_FOR_CURRENT_ACCESS" - The SuggestionsViewMode applied to the
  1162  	// returned document depends on the user's current access level. If the user
  1163  	// only has view access, PREVIEW_WITHOUT_SUGGESTIONS is applied. Otherwise,
  1164  	// SUGGESTIONS_INLINE is applied. This is the default suggestions view mode.
  1165  	//   "SUGGESTIONS_INLINE" - The returned document has suggestions inline.
  1166  	// Suggested changes will be differentiated from base content within the
  1167  	// document. Requests to retrieve a document using this mode will return a 403
  1168  	// error if the user does not have permission to view suggested changes.
  1169  	//   "PREVIEW_SUGGESTIONS_ACCEPTED" - The returned document is a preview with
  1170  	// all suggested changes accepted. Requests to retrieve a document using this
  1171  	// mode will return a 403 error if the user does not have permission to view
  1172  	// suggested changes.
  1173  	//   "PREVIEW_WITHOUT_SUGGESTIONS" - The returned document is a preview with
  1174  	// all suggested changes rejected if there are any suggestions in the document.
  1175  	SuggestionsViewMode string `json:"suggestionsViewMode,omitempty"`
  1176  	// Title: The title of the document.
  1177  	Title string `json:"title,omitempty"`
  1178  
  1179  	// ServerResponse contains the HTTP response code and headers from the server.
  1180  	googleapi.ServerResponse `json:"-"`
  1181  	// ForceSendFields is a list of field names (e.g. "Body") to unconditionally
  1182  	// include in API requests. By default, fields with empty or default values are
  1183  	// omitted from API requests. See
  1184  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1185  	// details.
  1186  	ForceSendFields []string `json:"-"`
  1187  	// NullFields is a list of field names (e.g. "Body") to include in API requests
  1188  	// with the JSON null value. By default, fields with empty values are omitted
  1189  	// from API requests. See
  1190  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1191  	NullFields []string `json:"-"`
  1192  }
  1193  
  1194  func (s *Document) MarshalJSON() ([]byte, error) {
  1195  	type NoMethod Document
  1196  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1197  }
  1198  
  1199  // DocumentStyle: The style of the document.
  1200  type DocumentStyle struct {
  1201  	// Background: The background of the document. Documents cannot have a
  1202  	// transparent background color.
  1203  	Background *Background `json:"background,omitempty"`
  1204  	// DefaultFooterId: The ID of the default footer. If not set, there's no
  1205  	// default footer. This property is read-only.
  1206  	DefaultFooterId string `json:"defaultFooterId,omitempty"`
  1207  	// DefaultHeaderId: The ID of the default header. If not set, there's no
  1208  	// default header. This property is read-only.
  1209  	DefaultHeaderId string `json:"defaultHeaderId,omitempty"`
  1210  	// EvenPageFooterId: The ID of the footer used only for even pages. The value
  1211  	// of use_even_page_header_footer determines whether to use the
  1212  	// default_footer_id or this value for the footer on even pages. If not set,
  1213  	// there's no even page footer. This property is read-only.
  1214  	EvenPageFooterId string `json:"evenPageFooterId,omitempty"`
  1215  	// EvenPageHeaderId: The ID of the header used only for even pages. The value
  1216  	// of use_even_page_header_footer determines whether to use the
  1217  	// default_header_id or this value for the header on even pages. If not set,
  1218  	// there's no even page header. This property is read-only.
  1219  	EvenPageHeaderId string `json:"evenPageHeaderId,omitempty"`
  1220  	// FirstPageFooterId: The ID of the footer used only for the first page. If not
  1221  	// set then a unique footer for the first page does not exist. The value of
  1222  	// use_first_page_header_footer determines whether to use the default_footer_id
  1223  	// or this value for the footer on the first page. If not set, there's no first
  1224  	// page footer. This property is read-only.
  1225  	FirstPageFooterId string `json:"firstPageFooterId,omitempty"`
  1226  	// FirstPageHeaderId: The ID of the header used only for the first page. If not
  1227  	// set then a unique header for the first page does not exist. The value of
  1228  	// use_first_page_header_footer determines whether to use the default_header_id
  1229  	// or this value for the header on the first page. If not set, there's no first
  1230  	// page header. This property is read-only.
  1231  	FirstPageHeaderId string `json:"firstPageHeaderId,omitempty"`
  1232  	// FlipPageOrientation: Optional. Indicates whether to flip the dimensions of
  1233  	// the page_size, which allows changing the page orientation between portrait
  1234  	// and landscape.
  1235  	FlipPageOrientation bool `json:"flipPageOrientation,omitempty"`
  1236  	// MarginBottom: The bottom page margin. Updating the bottom page margin on the
  1237  	// document style clears the bottom page margin on all section styles.
  1238  	MarginBottom *Dimension `json:"marginBottom,omitempty"`
  1239  	// MarginFooter: The amount of space between the bottom of the page and the
  1240  	// contents of the footer.
  1241  	MarginFooter *Dimension `json:"marginFooter,omitempty"`
  1242  	// MarginHeader: The amount of space between the top of the page and the
  1243  	// contents of the header.
  1244  	MarginHeader *Dimension `json:"marginHeader,omitempty"`
  1245  	// MarginLeft: The left page margin. Updating the left page margin on the
  1246  	// document style clears the left page margin on all section styles. It may
  1247  	// also cause columns to resize in all sections.
  1248  	MarginLeft *Dimension `json:"marginLeft,omitempty"`
  1249  	// MarginRight: The right page margin. Updating the right page margin on the
  1250  	// document style clears the right page margin on all section styles. It may
  1251  	// also cause columns to resize in all sections.
  1252  	MarginRight *Dimension `json:"marginRight,omitempty"`
  1253  	// MarginTop: The top page margin. Updating the top page margin on the document
  1254  	// style clears the top page margin on all section styles.
  1255  	MarginTop *Dimension `json:"marginTop,omitempty"`
  1256  	// PageNumberStart: The page number from which to start counting the number of
  1257  	// pages.
  1258  	PageNumberStart int64 `json:"pageNumberStart,omitempty"`
  1259  	// PageSize: The size of a page in the document.
  1260  	PageSize *Size `json:"pageSize,omitempty"`
  1261  	// UseCustomHeaderFooterMargins: Indicates whether DocumentStyle margin_header,
  1262  	// SectionStyle margin_header and DocumentStyle margin_footer, SectionStyle
  1263  	// margin_footer are respected. When false, the default values in the Docs
  1264  	// editor for header and footer margin are used. This property is read-only.
  1265  	UseCustomHeaderFooterMargins bool `json:"useCustomHeaderFooterMargins,omitempty"`
  1266  	// UseEvenPageHeaderFooter: Indicates whether to use the even page header /
  1267  	// footer IDs for the even pages.
  1268  	UseEvenPageHeaderFooter bool `json:"useEvenPageHeaderFooter,omitempty"`
  1269  	// UseFirstPageHeaderFooter: Indicates whether to use the first page header /
  1270  	// footer IDs for the first page.
  1271  	UseFirstPageHeaderFooter bool `json:"useFirstPageHeaderFooter,omitempty"`
  1272  	// ForceSendFields is a list of field names (e.g. "Background") to
  1273  	// unconditionally include in API requests. By default, fields with empty or
  1274  	// default values are omitted from API requests. See
  1275  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1276  	// details.
  1277  	ForceSendFields []string `json:"-"`
  1278  	// NullFields is a list of field names (e.g. "Background") to include in API
  1279  	// requests with the JSON null value. By default, fields with empty values are
  1280  	// omitted from API requests. See
  1281  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1282  	NullFields []string `json:"-"`
  1283  }
  1284  
  1285  func (s *DocumentStyle) MarshalJSON() ([]byte, error) {
  1286  	type NoMethod DocumentStyle
  1287  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1288  }
  1289  
  1290  // DocumentStyleSuggestionState: A mask that indicates which of the fields on
  1291  // the base DocumentStyle have been changed in this suggestion. For any field
  1292  // set to true, there's a new suggested value.
  1293  type DocumentStyleSuggestionState struct {
  1294  	// BackgroundSuggestionState: A mask that indicates which of the fields in
  1295  	// background have been changed in this suggestion.
  1296  	BackgroundSuggestionState *BackgroundSuggestionState `json:"backgroundSuggestionState,omitempty"`
  1297  	// DefaultFooterIdSuggested: Indicates if there was a suggested change to
  1298  	// default_footer_id.
  1299  	DefaultFooterIdSuggested bool `json:"defaultFooterIdSuggested,omitempty"`
  1300  	// DefaultHeaderIdSuggested: Indicates if there was a suggested change to
  1301  	// default_header_id.
  1302  	DefaultHeaderIdSuggested bool `json:"defaultHeaderIdSuggested,omitempty"`
  1303  	// EvenPageFooterIdSuggested: Indicates if there was a suggested change to
  1304  	// even_page_footer_id.
  1305  	EvenPageFooterIdSuggested bool `json:"evenPageFooterIdSuggested,omitempty"`
  1306  	// EvenPageHeaderIdSuggested: Indicates if there was a suggested change to
  1307  	// even_page_header_id.
  1308  	EvenPageHeaderIdSuggested bool `json:"evenPageHeaderIdSuggested,omitempty"`
  1309  	// FirstPageFooterIdSuggested: Indicates if there was a suggested change to
  1310  	// first_page_footer_id.
  1311  	FirstPageFooterIdSuggested bool `json:"firstPageFooterIdSuggested,omitempty"`
  1312  	// FirstPageHeaderIdSuggested: Indicates if there was a suggested change to
  1313  	// first_page_header_id.
  1314  	FirstPageHeaderIdSuggested bool `json:"firstPageHeaderIdSuggested,omitempty"`
  1315  	// FlipPageOrientationSuggested: Optional. Indicates if there was a suggested
  1316  	// change to flip_page_orientation.
  1317  	FlipPageOrientationSuggested bool `json:"flipPageOrientationSuggested,omitempty"`
  1318  	// MarginBottomSuggested: Indicates if there was a suggested change to
  1319  	// margin_bottom.
  1320  	MarginBottomSuggested bool `json:"marginBottomSuggested,omitempty"`
  1321  	// MarginFooterSuggested: Indicates if there was a suggested change to
  1322  	// margin_footer.
  1323  	MarginFooterSuggested bool `json:"marginFooterSuggested,omitempty"`
  1324  	// MarginHeaderSuggested: Indicates if there was a suggested change to
  1325  	// margin_header.
  1326  	MarginHeaderSuggested bool `json:"marginHeaderSuggested,omitempty"`
  1327  	// MarginLeftSuggested: Indicates if there was a suggested change to
  1328  	// margin_left.
  1329  	MarginLeftSuggested bool `json:"marginLeftSuggested,omitempty"`
  1330  	// MarginRightSuggested: Indicates if there was a suggested change to
  1331  	// margin_right.
  1332  	MarginRightSuggested bool `json:"marginRightSuggested,omitempty"`
  1333  	// MarginTopSuggested: Indicates if there was a suggested change to margin_top.
  1334  	MarginTopSuggested bool `json:"marginTopSuggested,omitempty"`
  1335  	// PageNumberStartSuggested: Indicates if there was a suggested change to
  1336  	// page_number_start.
  1337  	PageNumberStartSuggested bool `json:"pageNumberStartSuggested,omitempty"`
  1338  	// PageSizeSuggestionState: A mask that indicates which of the fields in size
  1339  	// have been changed in this suggestion.
  1340  	PageSizeSuggestionState *SizeSuggestionState `json:"pageSizeSuggestionState,omitempty"`
  1341  	// UseCustomHeaderFooterMarginsSuggested: Indicates if there was a suggested
  1342  	// change to use_custom_header_footer_margins.
  1343  	UseCustomHeaderFooterMarginsSuggested bool `json:"useCustomHeaderFooterMarginsSuggested,omitempty"`
  1344  	// UseEvenPageHeaderFooterSuggested: Indicates if there was a suggested change
  1345  	// to use_even_page_header_footer.
  1346  	UseEvenPageHeaderFooterSuggested bool `json:"useEvenPageHeaderFooterSuggested,omitempty"`
  1347  	// UseFirstPageHeaderFooterSuggested: Indicates if there was a suggested change
  1348  	// to use_first_page_header_footer.
  1349  	UseFirstPageHeaderFooterSuggested bool `json:"useFirstPageHeaderFooterSuggested,omitempty"`
  1350  	// ForceSendFields is a list of field names (e.g. "BackgroundSuggestionState")
  1351  	// to unconditionally include in API requests. By default, fields with empty or
  1352  	// default values are omitted from API requests. See
  1353  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1354  	// details.
  1355  	ForceSendFields []string `json:"-"`
  1356  	// NullFields is a list of field names (e.g. "BackgroundSuggestionState") to
  1357  	// include in API requests with the JSON null value. By default, fields with
  1358  	// empty values are omitted from API requests. See
  1359  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1360  	NullFields []string `json:"-"`
  1361  }
  1362  
  1363  func (s *DocumentStyleSuggestionState) MarshalJSON() ([]byte, error) {
  1364  	type NoMethod DocumentStyleSuggestionState
  1365  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1366  }
  1367  
  1368  // EmbeddedDrawingProperties: The properties of an embedded drawing and used to
  1369  // differentiate the object type. An embedded drawing is one that's created and
  1370  // edited within a document. Note that extensive details are not supported.
  1371  type EmbeddedDrawingProperties struct {
  1372  }
  1373  
  1374  // EmbeddedDrawingPropertiesSuggestionState: A mask that indicates which of the
  1375  // fields on the base EmbeddedDrawingProperties have been changed in this
  1376  // suggestion. For any field set to true, there's a new suggested value.
  1377  type EmbeddedDrawingPropertiesSuggestionState struct {
  1378  }
  1379  
  1380  // EmbeddedObject: An embedded object in the document.
  1381  type EmbeddedObject struct {
  1382  	// Description: The description of the embedded object. The `title` and
  1383  	// `description` are both combined to display alt text.
  1384  	Description string `json:"description,omitempty"`
  1385  	// EmbeddedDrawingProperties: The properties of an embedded drawing.
  1386  	EmbeddedDrawingProperties *EmbeddedDrawingProperties `json:"embeddedDrawingProperties,omitempty"`
  1387  	// EmbeddedObjectBorder: The border of the embedded object.
  1388  	EmbeddedObjectBorder *EmbeddedObjectBorder `json:"embeddedObjectBorder,omitempty"`
  1389  	// ImageProperties: The properties of an image.
  1390  	ImageProperties *ImageProperties `json:"imageProperties,omitempty"`
  1391  	// LinkedContentReference: A reference to the external linked source content.
  1392  	// For example, it contains a reference to the source Google Sheets chart when
  1393  	// the embedded object is a linked chart. If unset, then the embedded object is
  1394  	// not linked.
  1395  	LinkedContentReference *LinkedContentReference `json:"linkedContentReference,omitempty"`
  1396  	// MarginBottom: The bottom margin of the embedded object.
  1397  	MarginBottom *Dimension `json:"marginBottom,omitempty"`
  1398  	// MarginLeft: The left margin of the embedded object.
  1399  	MarginLeft *Dimension `json:"marginLeft,omitempty"`
  1400  	// MarginRight: The right margin of the embedded object.
  1401  	MarginRight *Dimension `json:"marginRight,omitempty"`
  1402  	// MarginTop: The top margin of the embedded object.
  1403  	MarginTop *Dimension `json:"marginTop,omitempty"`
  1404  	// Size: The visible size of the image after cropping.
  1405  	Size *Size `json:"size,omitempty"`
  1406  	// Title: The title of the embedded object. The `title` and `description` are
  1407  	// both combined to display alt text.
  1408  	Title string `json:"title,omitempty"`
  1409  	// ForceSendFields is a list of field names (e.g. "Description") to
  1410  	// unconditionally include in API requests. By default, fields with empty or
  1411  	// default values are omitted from API requests. See
  1412  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1413  	// details.
  1414  	ForceSendFields []string `json:"-"`
  1415  	// NullFields is a list of field names (e.g. "Description") to include in API
  1416  	// requests with the JSON null value. By default, fields with empty values are
  1417  	// omitted from API requests. See
  1418  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1419  	NullFields []string `json:"-"`
  1420  }
  1421  
  1422  func (s *EmbeddedObject) MarshalJSON() ([]byte, error) {
  1423  	type NoMethod EmbeddedObject
  1424  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1425  }
  1426  
  1427  // EmbeddedObjectBorder: A border around an EmbeddedObject.
  1428  type EmbeddedObjectBorder struct {
  1429  	// Color: The color of the border.
  1430  	Color *OptionalColor `json:"color,omitempty"`
  1431  	// DashStyle: The dash style of the border.
  1432  	//
  1433  	// Possible values:
  1434  	//   "DASH_STYLE_UNSPECIFIED" - Unspecified dash style.
  1435  	//   "SOLID" - Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  1436  	// 'solid'. This is the default dash style.
  1437  	//   "DOT" - Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  1438  	// 'dot'.
  1439  	//   "DASH" - Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  1440  	// 'dash'.
  1441  	DashStyle string `json:"dashStyle,omitempty"`
  1442  	// PropertyState: The property state of the border property.
  1443  	//
  1444  	// Possible values:
  1445  	//   "RENDERED" - If a property's state is RENDERED, then the element has the
  1446  	// corresponding property when rendered in the document. This is the default
  1447  	// value.
  1448  	//   "NOT_RENDERED" - If a property's state is NOT_RENDERED, then the element
  1449  	// does not have the corresponding property when rendered in the document.
  1450  	PropertyState string `json:"propertyState,omitempty"`
  1451  	// Width: The width of the border.
  1452  	Width *Dimension `json:"width,omitempty"`
  1453  	// ForceSendFields is a list of field names (e.g. "Color") to unconditionally
  1454  	// include in API requests. By default, fields with empty or default values are
  1455  	// omitted from API requests. See
  1456  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1457  	// details.
  1458  	ForceSendFields []string `json:"-"`
  1459  	// NullFields is a list of field names (e.g. "Color") to include in API
  1460  	// requests with the JSON null value. By default, fields with empty values are
  1461  	// omitted from API requests. See
  1462  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1463  	NullFields []string `json:"-"`
  1464  }
  1465  
  1466  func (s *EmbeddedObjectBorder) MarshalJSON() ([]byte, error) {
  1467  	type NoMethod EmbeddedObjectBorder
  1468  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1469  }
  1470  
  1471  // EmbeddedObjectBorderSuggestionState: A mask that indicates which of the
  1472  // fields on the base EmbeddedObjectBorder have been changed in this
  1473  // suggestion. For any field set to true, there's a new suggested value.
  1474  type EmbeddedObjectBorderSuggestionState struct {
  1475  	// ColorSuggested: Indicates if there was a suggested change to color.
  1476  	ColorSuggested bool `json:"colorSuggested,omitempty"`
  1477  	// DashStyleSuggested: Indicates if there was a suggested change to dash_style.
  1478  	DashStyleSuggested bool `json:"dashStyleSuggested,omitempty"`
  1479  	// PropertyStateSuggested: Indicates if there was a suggested change to
  1480  	// property_state.
  1481  	PropertyStateSuggested bool `json:"propertyStateSuggested,omitempty"`
  1482  	// WidthSuggested: Indicates if there was a suggested change to width.
  1483  	WidthSuggested bool `json:"widthSuggested,omitempty"`
  1484  	// ForceSendFields is a list of field names (e.g. "ColorSuggested") to
  1485  	// unconditionally include in API requests. By default, fields with empty or
  1486  	// default values are omitted from API requests. See
  1487  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1488  	// details.
  1489  	ForceSendFields []string `json:"-"`
  1490  	// NullFields is a list of field names (e.g. "ColorSuggested") to include in
  1491  	// API requests with the JSON null value. By default, fields with empty values
  1492  	// are omitted from API requests. See
  1493  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1494  	NullFields []string `json:"-"`
  1495  }
  1496  
  1497  func (s *EmbeddedObjectBorderSuggestionState) MarshalJSON() ([]byte, error) {
  1498  	type NoMethod EmbeddedObjectBorderSuggestionState
  1499  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1500  }
  1501  
  1502  // EmbeddedObjectSuggestionState: A mask that indicates which of the fields on
  1503  // the base EmbeddedObject have been changed in this suggestion. For any field
  1504  // set to true, there's a new suggested value.
  1505  type EmbeddedObjectSuggestionState struct {
  1506  	// DescriptionSuggested: Indicates if there was a suggested change to
  1507  	// description.
  1508  	DescriptionSuggested bool `json:"descriptionSuggested,omitempty"`
  1509  	// EmbeddedDrawingPropertiesSuggestionState: A mask that indicates which of the
  1510  	// fields in embedded_drawing_properties have been changed in this suggestion.
  1511  	EmbeddedDrawingPropertiesSuggestionState *EmbeddedDrawingPropertiesSuggestionState `json:"embeddedDrawingPropertiesSuggestionState,omitempty"`
  1512  	// EmbeddedObjectBorderSuggestionState: A mask that indicates which of the
  1513  	// fields in embedded_object_border have been changed in this suggestion.
  1514  	EmbeddedObjectBorderSuggestionState *EmbeddedObjectBorderSuggestionState `json:"embeddedObjectBorderSuggestionState,omitempty"`
  1515  	// ImagePropertiesSuggestionState: A mask that indicates which of the fields in
  1516  	// image_properties have been changed in this suggestion.
  1517  	ImagePropertiesSuggestionState *ImagePropertiesSuggestionState `json:"imagePropertiesSuggestionState,omitempty"`
  1518  	// LinkedContentReferenceSuggestionState: A mask that indicates which of the
  1519  	// fields in linked_content_reference have been changed in this suggestion.
  1520  	LinkedContentReferenceSuggestionState *LinkedContentReferenceSuggestionState `json:"linkedContentReferenceSuggestionState,omitempty"`
  1521  	// MarginBottomSuggested: Indicates if there was a suggested change to
  1522  	// margin_bottom.
  1523  	MarginBottomSuggested bool `json:"marginBottomSuggested,omitempty"`
  1524  	// MarginLeftSuggested: Indicates if there was a suggested change to
  1525  	// margin_left.
  1526  	MarginLeftSuggested bool `json:"marginLeftSuggested,omitempty"`
  1527  	// MarginRightSuggested: Indicates if there was a suggested change to
  1528  	// margin_right.
  1529  	MarginRightSuggested bool `json:"marginRightSuggested,omitempty"`
  1530  	// MarginTopSuggested: Indicates if there was a suggested change to margin_top.
  1531  	MarginTopSuggested bool `json:"marginTopSuggested,omitempty"`
  1532  	// SizeSuggestionState: A mask that indicates which of the fields in size have
  1533  	// been changed in this suggestion.
  1534  	SizeSuggestionState *SizeSuggestionState `json:"sizeSuggestionState,omitempty"`
  1535  	// TitleSuggested: Indicates if there was a suggested change to title.
  1536  	TitleSuggested bool `json:"titleSuggested,omitempty"`
  1537  	// ForceSendFields is a list of field names (e.g. "DescriptionSuggested") to
  1538  	// unconditionally include in API requests. By default, fields with empty or
  1539  	// default values are omitted from API requests. See
  1540  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1541  	// details.
  1542  	ForceSendFields []string `json:"-"`
  1543  	// NullFields is a list of field names (e.g. "DescriptionSuggested") to include
  1544  	// in API requests with the JSON null value. By default, fields with empty
  1545  	// values are omitted from API requests. See
  1546  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1547  	NullFields []string `json:"-"`
  1548  }
  1549  
  1550  func (s *EmbeddedObjectSuggestionState) MarshalJSON() ([]byte, error) {
  1551  	type NoMethod EmbeddedObjectSuggestionState
  1552  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1553  }
  1554  
  1555  // EndOfSegmentLocation: Location at the end of a body, header, footer or
  1556  // footnote. The location is immediately before the last newline in the
  1557  // document segment.
  1558  type EndOfSegmentLocation struct {
  1559  	// SegmentId: The ID of the header, footer or footnote the location is in. An
  1560  	// empty segment ID signifies the document's body.
  1561  	SegmentId string `json:"segmentId,omitempty"`
  1562  	// ForceSendFields is a list of field names (e.g. "SegmentId") to
  1563  	// unconditionally include in API requests. By default, fields with empty or
  1564  	// default values are omitted from API requests. See
  1565  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1566  	// details.
  1567  	ForceSendFields []string `json:"-"`
  1568  	// NullFields is a list of field names (e.g. "SegmentId") to include in API
  1569  	// requests with the JSON null value. By default, fields with empty values are
  1570  	// omitted from API requests. See
  1571  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1572  	NullFields []string `json:"-"`
  1573  }
  1574  
  1575  func (s *EndOfSegmentLocation) MarshalJSON() ([]byte, error) {
  1576  	type NoMethod EndOfSegmentLocation
  1577  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1578  }
  1579  
  1580  // Equation: A ParagraphElement representing an equation.
  1581  type Equation struct {
  1582  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  1583  	// no suggested deletions of this content.
  1584  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  1585  	// SuggestedInsertionIds: The suggested insertion IDs. An Equation may have
  1586  	// multiple insertion IDs if it's a nested suggested change. If empty, then
  1587  	// this is not a suggested insertion.
  1588  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  1589  	// ForceSendFields is a list of field names (e.g. "SuggestedDeletionIds") to
  1590  	// unconditionally include in API requests. By default, fields with empty or
  1591  	// default values are omitted from API requests. See
  1592  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1593  	// details.
  1594  	ForceSendFields []string `json:"-"`
  1595  	// NullFields is a list of field names (e.g. "SuggestedDeletionIds") to include
  1596  	// in API requests with the JSON null value. By default, fields with empty
  1597  	// values are omitted from API requests. See
  1598  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1599  	NullFields []string `json:"-"`
  1600  }
  1601  
  1602  func (s *Equation) MarshalJSON() ([]byte, error) {
  1603  	type NoMethod Equation
  1604  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1605  }
  1606  
  1607  // Footer: A document footer.
  1608  type Footer struct {
  1609  	// Content: The contents of the footer. The indexes for a footer's content
  1610  	// begin at zero.
  1611  	Content []*StructuralElement `json:"content,omitempty"`
  1612  	// FooterId: The ID of the footer.
  1613  	FooterId string `json:"footerId,omitempty"`
  1614  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
  1615  	// include in API requests. By default, fields with empty or default values are
  1616  	// omitted from API requests. See
  1617  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1618  	// details.
  1619  	ForceSendFields []string `json:"-"`
  1620  	// NullFields is a list of field names (e.g. "Content") to include in API
  1621  	// requests with the JSON null value. By default, fields with empty values are
  1622  	// omitted from API requests. See
  1623  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1624  	NullFields []string `json:"-"`
  1625  }
  1626  
  1627  func (s *Footer) MarshalJSON() ([]byte, error) {
  1628  	type NoMethod Footer
  1629  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1630  }
  1631  
  1632  // Footnote: A document footnote.
  1633  type Footnote struct {
  1634  	// Content: The contents of the footnote. The indexes for a footnote's content
  1635  	// begin at zero.
  1636  	Content []*StructuralElement `json:"content,omitempty"`
  1637  	// FootnoteId: The ID of the footnote.
  1638  	FootnoteId string `json:"footnoteId,omitempty"`
  1639  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
  1640  	// include in API requests. By default, fields with empty or default values are
  1641  	// omitted from API requests. See
  1642  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1643  	// details.
  1644  	ForceSendFields []string `json:"-"`
  1645  	// NullFields is a list of field names (e.g. "Content") to include in API
  1646  	// requests with the JSON null value. By default, fields with empty values are
  1647  	// omitted from API requests. See
  1648  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1649  	NullFields []string `json:"-"`
  1650  }
  1651  
  1652  func (s *Footnote) MarshalJSON() ([]byte, error) {
  1653  	type NoMethod Footnote
  1654  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1655  }
  1656  
  1657  // FootnoteReference: A ParagraphElement representing a footnote reference. A
  1658  // footnote reference is the inline content rendered with a number and is used
  1659  // to identify the footnote.
  1660  type FootnoteReference struct {
  1661  	// FootnoteId: The ID of the footnote that contains the content of this
  1662  	// footnote reference.
  1663  	FootnoteId string `json:"footnoteId,omitempty"`
  1664  	// FootnoteNumber: The rendered number of this footnote.
  1665  	FootnoteNumber string `json:"footnoteNumber,omitempty"`
  1666  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  1667  	// no suggested deletions of this content.
  1668  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  1669  	// SuggestedInsertionIds: The suggested insertion IDs. A FootnoteReference may
  1670  	// have multiple insertion IDs if it's a nested suggested change. If empty,
  1671  	// then this is not a suggested insertion.
  1672  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  1673  	// SuggestedTextStyleChanges: The suggested text style changes to this
  1674  	// FootnoteReference, keyed by suggestion ID.
  1675  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
  1676  	// TextStyle: The text style of this FootnoteReference.
  1677  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  1678  	// ForceSendFields is a list of field names (e.g. "FootnoteId") to
  1679  	// unconditionally include in API requests. By default, fields with empty or
  1680  	// default values are omitted from API requests. See
  1681  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1682  	// details.
  1683  	ForceSendFields []string `json:"-"`
  1684  	// NullFields is a list of field names (e.g. "FootnoteId") to include in API
  1685  	// requests with the JSON null value. By default, fields with empty values are
  1686  	// omitted from API requests. See
  1687  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1688  	NullFields []string `json:"-"`
  1689  }
  1690  
  1691  func (s *FootnoteReference) MarshalJSON() ([]byte, error) {
  1692  	type NoMethod FootnoteReference
  1693  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1694  }
  1695  
  1696  // Header: A document header.
  1697  type Header struct {
  1698  	// Content: The contents of the header. The indexes for a header's content
  1699  	// begin at zero.
  1700  	Content []*StructuralElement `json:"content,omitempty"`
  1701  	// HeaderId: The ID of the header.
  1702  	HeaderId string `json:"headerId,omitempty"`
  1703  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
  1704  	// include in API requests. By default, fields with empty or default values are
  1705  	// omitted from API requests. See
  1706  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1707  	// details.
  1708  	ForceSendFields []string `json:"-"`
  1709  	// NullFields is a list of field names (e.g. "Content") to include in API
  1710  	// requests with the JSON null value. By default, fields with empty values are
  1711  	// omitted from API requests. See
  1712  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1713  	NullFields []string `json:"-"`
  1714  }
  1715  
  1716  func (s *Header) MarshalJSON() ([]byte, error) {
  1717  	type NoMethod Header
  1718  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1719  }
  1720  
  1721  // HorizontalRule: A ParagraphElement representing a horizontal line.
  1722  type HorizontalRule struct {
  1723  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  1724  	// no suggested deletions of this content.
  1725  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  1726  	// SuggestedInsertionIds: The suggested insertion IDs. A HorizontalRule may
  1727  	// have multiple insertion IDs if it is a nested suggested change. If empty,
  1728  	// then this is not a suggested insertion.
  1729  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  1730  	// SuggestedTextStyleChanges: The suggested text style changes to this
  1731  	// HorizontalRule, keyed by suggestion ID.
  1732  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
  1733  	// TextStyle: The text style of this HorizontalRule. Similar to text content,
  1734  	// like text runs and footnote references, the text style of a horizontal rule
  1735  	// can affect content layout as well as the styling of text inserted next to
  1736  	// it.
  1737  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  1738  	// ForceSendFields is a list of field names (e.g. "SuggestedDeletionIds") to
  1739  	// unconditionally include in API requests. By default, fields with empty or
  1740  	// default values are omitted from API requests. See
  1741  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1742  	// details.
  1743  	ForceSendFields []string `json:"-"`
  1744  	// NullFields is a list of field names (e.g. "SuggestedDeletionIds") to include
  1745  	// in API requests with the JSON null value. By default, fields with empty
  1746  	// values are omitted from API requests. See
  1747  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1748  	NullFields []string `json:"-"`
  1749  }
  1750  
  1751  func (s *HorizontalRule) MarshalJSON() ([]byte, error) {
  1752  	type NoMethod HorizontalRule
  1753  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1754  }
  1755  
  1756  // ImageProperties: The properties of an image.
  1757  type ImageProperties struct {
  1758  	// Angle: The clockwise rotation angle of the image, in radians.
  1759  	Angle float64 `json:"angle,omitempty"`
  1760  	// Brightness: The brightness effect of the image. The value should be in the
  1761  	// interval [-1.0, 1.0], where 0 means no effect.
  1762  	Brightness float64 `json:"brightness,omitempty"`
  1763  	// ContentUri: A URI to the image with a default lifetime of 30 minutes. This
  1764  	// URI is tagged with the account of the requester. Anyone with the URI
  1765  	// effectively accesses the image as the original requester. Access to the
  1766  	// image may be lost if the document's sharing settings change.
  1767  	ContentUri string `json:"contentUri,omitempty"`
  1768  	// Contrast: The contrast effect of the image. The value should be in the
  1769  	// interval [-1.0, 1.0], where 0 means no effect.
  1770  	Contrast float64 `json:"contrast,omitempty"`
  1771  	// CropProperties: The crop properties of the image.
  1772  	CropProperties *CropProperties `json:"cropProperties,omitempty"`
  1773  	// SourceUri: The source URI is the URI used to insert the image. The source
  1774  	// URI can be empty.
  1775  	SourceUri string `json:"sourceUri,omitempty"`
  1776  	// Transparency: The transparency effect of the image. The value should be in
  1777  	// the interval [0.0, 1.0], where 0 means no effect and 1 means transparent.
  1778  	Transparency float64 `json:"transparency,omitempty"`
  1779  	// ForceSendFields is a list of field names (e.g. "Angle") to unconditionally
  1780  	// include in API requests. By default, fields with empty or default values are
  1781  	// omitted from API requests. See
  1782  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1783  	// details.
  1784  	ForceSendFields []string `json:"-"`
  1785  	// NullFields is a list of field names (e.g. "Angle") to include in API
  1786  	// requests with the JSON null value. By default, fields with empty values are
  1787  	// omitted from API requests. See
  1788  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1789  	NullFields []string `json:"-"`
  1790  }
  1791  
  1792  func (s *ImageProperties) MarshalJSON() ([]byte, error) {
  1793  	type NoMethod ImageProperties
  1794  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1795  }
  1796  
  1797  func (s *ImageProperties) UnmarshalJSON(data []byte) error {
  1798  	type NoMethod ImageProperties
  1799  	var s1 struct {
  1800  		Angle        gensupport.JSONFloat64 `json:"angle"`
  1801  		Brightness   gensupport.JSONFloat64 `json:"brightness"`
  1802  		Contrast     gensupport.JSONFloat64 `json:"contrast"`
  1803  		Transparency gensupport.JSONFloat64 `json:"transparency"`
  1804  		*NoMethod
  1805  	}
  1806  	s1.NoMethod = (*NoMethod)(s)
  1807  	if err := json.Unmarshal(data, &s1); err != nil {
  1808  		return err
  1809  	}
  1810  	s.Angle = float64(s1.Angle)
  1811  	s.Brightness = float64(s1.Brightness)
  1812  	s.Contrast = float64(s1.Contrast)
  1813  	s.Transparency = float64(s1.Transparency)
  1814  	return nil
  1815  }
  1816  
  1817  // ImagePropertiesSuggestionState: A mask that indicates which of the fields on
  1818  // the base ImageProperties have been changed in this suggestion. For any field
  1819  // set to true, there's a new suggested value.
  1820  type ImagePropertiesSuggestionState struct {
  1821  	// AngleSuggested: Indicates if there was a suggested change to angle.
  1822  	AngleSuggested bool `json:"angleSuggested,omitempty"`
  1823  	// BrightnessSuggested: Indicates if there was a suggested change to
  1824  	// brightness.
  1825  	BrightnessSuggested bool `json:"brightnessSuggested,omitempty"`
  1826  	// ContentUriSuggested: Indicates if there was a suggested change to
  1827  	// content_uri.
  1828  	ContentUriSuggested bool `json:"contentUriSuggested,omitempty"`
  1829  	// ContrastSuggested: Indicates if there was a suggested change to contrast.
  1830  	ContrastSuggested bool `json:"contrastSuggested,omitempty"`
  1831  	// CropPropertiesSuggestionState: A mask that indicates which of the fields in
  1832  	// crop_properties have been changed in this suggestion.
  1833  	CropPropertiesSuggestionState *CropPropertiesSuggestionState `json:"cropPropertiesSuggestionState,omitempty"`
  1834  	// SourceUriSuggested: Indicates if there was a suggested change to source_uri.
  1835  	SourceUriSuggested bool `json:"sourceUriSuggested,omitempty"`
  1836  	// TransparencySuggested: Indicates if there was a suggested change to
  1837  	// transparency.
  1838  	TransparencySuggested bool `json:"transparencySuggested,omitempty"`
  1839  	// ForceSendFields is a list of field names (e.g. "AngleSuggested") to
  1840  	// unconditionally include in API requests. By default, fields with empty or
  1841  	// default values are omitted from API requests. See
  1842  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1843  	// details.
  1844  	ForceSendFields []string `json:"-"`
  1845  	// NullFields is a list of field names (e.g. "AngleSuggested") to include in
  1846  	// API requests with the JSON null value. By default, fields with empty values
  1847  	// are omitted from API requests. See
  1848  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1849  	NullFields []string `json:"-"`
  1850  }
  1851  
  1852  func (s *ImagePropertiesSuggestionState) MarshalJSON() ([]byte, error) {
  1853  	type NoMethod ImagePropertiesSuggestionState
  1854  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1855  }
  1856  
  1857  // InlineObject: An object that appears inline with text. An InlineObject
  1858  // contains an EmbeddedObject such as an image.
  1859  type InlineObject struct {
  1860  	// InlineObjectProperties: The properties of this inline object.
  1861  	InlineObjectProperties *InlineObjectProperties `json:"inlineObjectProperties,omitempty"`
  1862  	// ObjectId: The ID of this inline object. Can be used to update an object’s
  1863  	// properties.
  1864  	ObjectId string `json:"objectId,omitempty"`
  1865  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  1866  	// no suggested deletions of this content.
  1867  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  1868  	// SuggestedInlineObjectPropertiesChanges: The suggested changes to the inline
  1869  	// object properties, keyed by suggestion ID.
  1870  	SuggestedInlineObjectPropertiesChanges map[string]SuggestedInlineObjectProperties `json:"suggestedInlineObjectPropertiesChanges,omitempty"`
  1871  	// SuggestedInsertionId: The suggested insertion ID. If empty, then this is not
  1872  	// a suggested insertion.
  1873  	SuggestedInsertionId string `json:"suggestedInsertionId,omitempty"`
  1874  	// ForceSendFields is a list of field names (e.g. "InlineObjectProperties") to
  1875  	// unconditionally include in API requests. By default, fields with empty or
  1876  	// default values are omitted from API requests. See
  1877  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1878  	// details.
  1879  	ForceSendFields []string `json:"-"`
  1880  	// NullFields is a list of field names (e.g. "InlineObjectProperties") to
  1881  	// include in API requests with the JSON null value. By default, fields with
  1882  	// empty values are omitted from API requests. See
  1883  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1884  	NullFields []string `json:"-"`
  1885  }
  1886  
  1887  func (s *InlineObject) MarshalJSON() ([]byte, error) {
  1888  	type NoMethod InlineObject
  1889  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1890  }
  1891  
  1892  // InlineObjectElement: A ParagraphElement that contains an InlineObject.
  1893  type InlineObjectElement struct {
  1894  	// InlineObjectId: The ID of the InlineObject this element contains.
  1895  	InlineObjectId string `json:"inlineObjectId,omitempty"`
  1896  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  1897  	// no suggested deletions of this content.
  1898  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  1899  	// SuggestedInsertionIds: The suggested insertion IDs. An InlineObjectElement
  1900  	// may have multiple insertion IDs if it's a nested suggested change. If empty,
  1901  	// then this is not a suggested insertion.
  1902  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  1903  	// SuggestedTextStyleChanges: The suggested text style changes to this
  1904  	// InlineObject, keyed by suggestion ID.
  1905  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
  1906  	// TextStyle: The text style of this InlineObjectElement. Similar to text
  1907  	// content, like text runs and footnote references, the text style of an inline
  1908  	// object element can affect content layout as well as the styling of text
  1909  	// inserted next to it.
  1910  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  1911  	// ForceSendFields is a list of field names (e.g. "InlineObjectId") to
  1912  	// unconditionally include in API requests. By default, fields with empty or
  1913  	// default values are omitted from API requests. See
  1914  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1915  	// details.
  1916  	ForceSendFields []string `json:"-"`
  1917  	// NullFields is a list of field names (e.g. "InlineObjectId") to include in
  1918  	// API requests with the JSON null value. By default, fields with empty values
  1919  	// are omitted from API requests. See
  1920  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1921  	NullFields []string `json:"-"`
  1922  }
  1923  
  1924  func (s *InlineObjectElement) MarshalJSON() ([]byte, error) {
  1925  	type NoMethod InlineObjectElement
  1926  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1927  }
  1928  
  1929  // InlineObjectProperties: Properties of an InlineObject.
  1930  type InlineObjectProperties struct {
  1931  	// EmbeddedObject: The embedded object of this inline object.
  1932  	EmbeddedObject *EmbeddedObject `json:"embeddedObject,omitempty"`
  1933  	// ForceSendFields is a list of field names (e.g. "EmbeddedObject") to
  1934  	// unconditionally include in API requests. By default, fields with empty or
  1935  	// default values are omitted from API requests. See
  1936  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  1937  	// details.
  1938  	ForceSendFields []string `json:"-"`
  1939  	// NullFields is a list of field names (e.g. "EmbeddedObject") to include in
  1940  	// API requests with the JSON null value. By default, fields with empty values
  1941  	// are omitted from API requests. See
  1942  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1943  	NullFields []string `json:"-"`
  1944  }
  1945  
  1946  func (s *InlineObjectProperties) MarshalJSON() ([]byte, error) {
  1947  	type NoMethod InlineObjectProperties
  1948  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1949  }
  1950  
  1951  // InlineObjectPropertiesSuggestionState: A mask that indicates which of the
  1952  // fields on the base InlineObjectProperties have been changed in this
  1953  // suggestion. For any field set to true, there's a new suggested value.
  1954  type InlineObjectPropertiesSuggestionState struct {
  1955  	// EmbeddedObjectSuggestionState: A mask that indicates which of the fields in
  1956  	// embedded_object have been changed in this suggestion.
  1957  	EmbeddedObjectSuggestionState *EmbeddedObjectSuggestionState `json:"embeddedObjectSuggestionState,omitempty"`
  1958  	// ForceSendFields is a list of field names (e.g.
  1959  	// "EmbeddedObjectSuggestionState") to unconditionally include in API requests.
  1960  	// By default, fields with empty or default values are omitted from API
  1961  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  1962  	// for more details.
  1963  	ForceSendFields []string `json:"-"`
  1964  	// NullFields is a list of field names (e.g. "EmbeddedObjectSuggestionState")
  1965  	// to include in API requests with the JSON null value. By default, fields with
  1966  	// empty values are omitted from API requests. See
  1967  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  1968  	NullFields []string `json:"-"`
  1969  }
  1970  
  1971  func (s *InlineObjectPropertiesSuggestionState) MarshalJSON() ([]byte, error) {
  1972  	type NoMethod InlineObjectPropertiesSuggestionState
  1973  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  1974  }
  1975  
  1976  // InsertInlineImageRequest: Inserts an InlineObject containing an image at the
  1977  // given location.
  1978  type InsertInlineImageRequest struct {
  1979  	// EndOfSegmentLocation: Inserts the text at the end of a header, footer or the
  1980  	// document body. Inline images cannot be inserted inside a footnote.
  1981  	EndOfSegmentLocation *EndOfSegmentLocation `json:"endOfSegmentLocation,omitempty"`
  1982  	// Location: Inserts the image at a specific index in the document. The image
  1983  	// must be inserted inside the bounds of an existing Paragraph. For instance,
  1984  	// it cannot be inserted at a table's start index (i.e. between the table and
  1985  	// its preceding paragraph). Inline images cannot be inserted inside a footnote
  1986  	// or equation.
  1987  	Location *Location `json:"location,omitempty"`
  1988  	// ObjectSize: The size that the image should appear as in the document. This
  1989  	// property is optional and the final size of the image in the document is
  1990  	// determined by the following rules: * If neither width nor height is
  1991  	// specified, then a default size of the image is calculated based on its
  1992  	// resolution. * If one dimension is specified then the other dimension is
  1993  	// calculated to preserve the aspect ratio of the image. * If both width and
  1994  	// height are specified, the image is scaled to fit within the provided
  1995  	// dimensions while maintaining its aspect ratio.
  1996  	ObjectSize *Size `json:"objectSize,omitempty"`
  1997  	// Uri: The image URI. The image is fetched once at insertion time and a copy
  1998  	// is stored for display inside the document. Images must be less than 50MB in
  1999  	// size, cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF
  2000  	// format. The provided URI must be publicly accessible and at most 2 kB in
  2001  	// length. The URI itself is saved with the image, and exposed via the
  2002  	// ImageProperties.content_uri field.
  2003  	Uri string `json:"uri,omitempty"`
  2004  	// ForceSendFields is a list of field names (e.g. "EndOfSegmentLocation") to
  2005  	// unconditionally include in API requests. By default, fields with empty or
  2006  	// default values are omitted from API requests. See
  2007  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2008  	// details.
  2009  	ForceSendFields []string `json:"-"`
  2010  	// NullFields is a list of field names (e.g. "EndOfSegmentLocation") to include
  2011  	// in API requests with the JSON null value. By default, fields with empty
  2012  	// values are omitted from API requests. See
  2013  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2014  	NullFields []string `json:"-"`
  2015  }
  2016  
  2017  func (s *InsertInlineImageRequest) MarshalJSON() ([]byte, error) {
  2018  	type NoMethod InsertInlineImageRequest
  2019  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2020  }
  2021  
  2022  // InsertInlineImageResponse: The result of inserting an inline image.
  2023  type InsertInlineImageResponse struct {
  2024  	// ObjectId: The ID of the created InlineObject.
  2025  	ObjectId string `json:"objectId,omitempty"`
  2026  	// ForceSendFields is a list of field names (e.g. "ObjectId") to
  2027  	// unconditionally include in API requests. By default, fields with empty or
  2028  	// default values are omitted from API requests. See
  2029  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2030  	// details.
  2031  	ForceSendFields []string `json:"-"`
  2032  	// NullFields is a list of field names (e.g. "ObjectId") to include in API
  2033  	// requests with the JSON null value. By default, fields with empty values are
  2034  	// omitted from API requests. See
  2035  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2036  	NullFields []string `json:"-"`
  2037  }
  2038  
  2039  func (s *InsertInlineImageResponse) MarshalJSON() ([]byte, error) {
  2040  	type NoMethod InsertInlineImageResponse
  2041  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2042  }
  2043  
  2044  // InsertInlineSheetsChartResponse: The result of inserting an embedded Google
  2045  // Sheets chart.
  2046  type InsertInlineSheetsChartResponse struct {
  2047  	// ObjectId: The object ID of the inserted chart.
  2048  	ObjectId string `json:"objectId,omitempty"`
  2049  	// ForceSendFields is a list of field names (e.g. "ObjectId") to
  2050  	// unconditionally include in API requests. By default, fields with empty or
  2051  	// default values are omitted from API requests. See
  2052  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2053  	// details.
  2054  	ForceSendFields []string `json:"-"`
  2055  	// NullFields is a list of field names (e.g. "ObjectId") to include in API
  2056  	// requests with the JSON null value. By default, fields with empty values are
  2057  	// omitted from API requests. See
  2058  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2059  	NullFields []string `json:"-"`
  2060  }
  2061  
  2062  func (s *InsertInlineSheetsChartResponse) MarshalJSON() ([]byte, error) {
  2063  	type NoMethod InsertInlineSheetsChartResponse
  2064  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2065  }
  2066  
  2067  // InsertPageBreakRequest: Inserts a page break followed by a newline at the
  2068  // specified location.
  2069  type InsertPageBreakRequest struct {
  2070  	// EndOfSegmentLocation: Inserts the page break at the end of the document
  2071  	// body. Page breaks cannot be inserted inside a footnote, header or footer.
  2072  	// Since page breaks can only be inserted inside the body, the segment ID field
  2073  	// must be empty.
  2074  	EndOfSegmentLocation *EndOfSegmentLocation `json:"endOfSegmentLocation,omitempty"`
  2075  	// Location: Inserts the page break at a specific index in the document. The
  2076  	// page break must be inserted inside the bounds of an existing Paragraph. For
  2077  	// instance, it cannot be inserted at a table's start index (i.e. between the
  2078  	// table and its preceding paragraph). Page breaks cannot be inserted inside a
  2079  	// table, equation, footnote, header or footer. Since page breaks can only be
  2080  	// inserted inside the body, the segment ID field must be empty.
  2081  	Location *Location `json:"location,omitempty"`
  2082  	// ForceSendFields is a list of field names (e.g. "EndOfSegmentLocation") to
  2083  	// unconditionally include in API requests. By default, fields with empty or
  2084  	// default values are omitted from API requests. See
  2085  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2086  	// details.
  2087  	ForceSendFields []string `json:"-"`
  2088  	// NullFields is a list of field names (e.g. "EndOfSegmentLocation") to include
  2089  	// in API requests with the JSON null value. By default, fields with empty
  2090  	// values are omitted from API requests. See
  2091  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2092  	NullFields []string `json:"-"`
  2093  }
  2094  
  2095  func (s *InsertPageBreakRequest) MarshalJSON() ([]byte, error) {
  2096  	type NoMethod InsertPageBreakRequest
  2097  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2098  }
  2099  
  2100  // InsertSectionBreakRequest: Inserts a section break at the given location. A
  2101  // newline character will be inserted before the section break.
  2102  type InsertSectionBreakRequest struct {
  2103  	// EndOfSegmentLocation: Inserts a newline and a section break at the end of
  2104  	// the document body. Section breaks cannot be inserted inside a footnote,
  2105  	// header or footer. Because section breaks can only be inserted inside the
  2106  	// body, the segment ID field must be empty.
  2107  	EndOfSegmentLocation *EndOfSegmentLocation `json:"endOfSegmentLocation,omitempty"`
  2108  	// Location: Inserts a newline and a section break at a specific index in the
  2109  	// document. The section break must be inserted inside the bounds of an
  2110  	// existing Paragraph. For instance, it cannot be inserted at a table's start
  2111  	// index (i.e. between the table and its preceding paragraph). Section breaks
  2112  	// cannot be inserted inside a table, equation, footnote, header, or footer.
  2113  	// Since section breaks can only be inserted inside the body, the segment ID
  2114  	// field must be empty.
  2115  	Location *Location `json:"location,omitempty"`
  2116  	// SectionType: The type of section to insert.
  2117  	//
  2118  	// Possible values:
  2119  	//   "SECTION_TYPE_UNSPECIFIED" - The section type is unspecified.
  2120  	//   "CONTINUOUS" - The section starts immediately after the last paragraph of
  2121  	// the previous section.
  2122  	//   "NEXT_PAGE" - The section starts on the next page.
  2123  	SectionType string `json:"sectionType,omitempty"`
  2124  	// ForceSendFields is a list of field names (e.g. "EndOfSegmentLocation") to
  2125  	// unconditionally include in API requests. By default, fields with empty or
  2126  	// default values are omitted from API requests. See
  2127  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2128  	// details.
  2129  	ForceSendFields []string `json:"-"`
  2130  	// NullFields is a list of field names (e.g. "EndOfSegmentLocation") to include
  2131  	// in API requests with the JSON null value. By default, fields with empty
  2132  	// values are omitted from API requests. See
  2133  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2134  	NullFields []string `json:"-"`
  2135  }
  2136  
  2137  func (s *InsertSectionBreakRequest) MarshalJSON() ([]byte, error) {
  2138  	type NoMethod InsertSectionBreakRequest
  2139  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2140  }
  2141  
  2142  // InsertTableColumnRequest: Inserts an empty column into a table.
  2143  type InsertTableColumnRequest struct {
  2144  	// InsertRight: Whether to insert new column to the right of the reference cell
  2145  	// location. - `True`: insert to the right. - `False`: insert to the left.
  2146  	InsertRight bool `json:"insertRight,omitempty"`
  2147  	// TableCellLocation: The reference table cell location from which columns will
  2148  	// be inserted. A new column will be inserted to the left (or right) of the
  2149  	// column where the reference cell is. If the reference cell is a merged cell,
  2150  	// a new column will be inserted to the left (or right) of the merged cell.
  2151  	TableCellLocation *TableCellLocation `json:"tableCellLocation,omitempty"`
  2152  	// ForceSendFields is a list of field names (e.g. "InsertRight") to
  2153  	// unconditionally include in API requests. By default, fields with empty or
  2154  	// default values are omitted from API requests. See
  2155  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2156  	// details.
  2157  	ForceSendFields []string `json:"-"`
  2158  	// NullFields is a list of field names (e.g. "InsertRight") to include in API
  2159  	// requests with the JSON null value. By default, fields with empty values are
  2160  	// omitted from API requests. See
  2161  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2162  	NullFields []string `json:"-"`
  2163  }
  2164  
  2165  func (s *InsertTableColumnRequest) MarshalJSON() ([]byte, error) {
  2166  	type NoMethod InsertTableColumnRequest
  2167  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2168  }
  2169  
  2170  // InsertTableRequest: Inserts a table at the specified location. A newline
  2171  // character will be inserted before the inserted table.
  2172  type InsertTableRequest struct {
  2173  	// Columns: The number of columns in the table.
  2174  	Columns int64 `json:"columns,omitempty"`
  2175  	// EndOfSegmentLocation: Inserts the table at the end of the given header,
  2176  	// footer or document body. A newline character will be inserted before the
  2177  	// inserted table. Tables cannot be inserted inside a footnote.
  2178  	EndOfSegmentLocation *EndOfSegmentLocation `json:"endOfSegmentLocation,omitempty"`
  2179  	// Location: Inserts the table at a specific model index. A newline character
  2180  	// will be inserted before the inserted table, therefore the table start index
  2181  	// will be at the specified location index + 1. The table must be inserted
  2182  	// inside the bounds of an existing Paragraph. For instance, it cannot be
  2183  	// inserted at a table's start index (i.e. between an existing table and its
  2184  	// preceding paragraph). Tables cannot be inserted inside a footnote or
  2185  	// equation.
  2186  	Location *Location `json:"location,omitempty"`
  2187  	// Rows: The number of rows in the table.
  2188  	Rows int64 `json:"rows,omitempty"`
  2189  	// ForceSendFields is a list of field names (e.g. "Columns") to unconditionally
  2190  	// include in API requests. By default, fields with empty or default values are
  2191  	// omitted from API requests. See
  2192  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2193  	// details.
  2194  	ForceSendFields []string `json:"-"`
  2195  	// NullFields is a list of field names (e.g. "Columns") to include in API
  2196  	// requests with the JSON null value. By default, fields with empty values are
  2197  	// omitted from API requests. See
  2198  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2199  	NullFields []string `json:"-"`
  2200  }
  2201  
  2202  func (s *InsertTableRequest) MarshalJSON() ([]byte, error) {
  2203  	type NoMethod InsertTableRequest
  2204  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2205  }
  2206  
  2207  // InsertTableRowRequest: Inserts an empty row into a table.
  2208  type InsertTableRowRequest struct {
  2209  	// InsertBelow: Whether to insert new row below the reference cell location. -
  2210  	// `True`: insert below the cell. - `False`: insert above the cell.
  2211  	InsertBelow bool `json:"insertBelow,omitempty"`
  2212  	// TableCellLocation: The reference table cell location from which rows will be
  2213  	// inserted. A new row will be inserted above (or below) the row where the
  2214  	// reference cell is. If the reference cell is a merged cell, a new row will be
  2215  	// inserted above (or below) the merged cell.
  2216  	TableCellLocation *TableCellLocation `json:"tableCellLocation,omitempty"`
  2217  	// ForceSendFields is a list of field names (e.g. "InsertBelow") to
  2218  	// unconditionally include in API requests. By default, fields with empty or
  2219  	// default values are omitted from API requests. See
  2220  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2221  	// details.
  2222  	ForceSendFields []string `json:"-"`
  2223  	// NullFields is a list of field names (e.g. "InsertBelow") to include in API
  2224  	// requests with the JSON null value. By default, fields with empty values are
  2225  	// omitted from API requests. See
  2226  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2227  	NullFields []string `json:"-"`
  2228  }
  2229  
  2230  func (s *InsertTableRowRequest) MarshalJSON() ([]byte, error) {
  2231  	type NoMethod InsertTableRowRequest
  2232  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2233  }
  2234  
  2235  // InsertTextRequest: Inserts text at the specified location.
  2236  type InsertTextRequest struct {
  2237  	// EndOfSegmentLocation: Inserts the text at the end of a header, footer,
  2238  	// footnote or the document body.
  2239  	EndOfSegmentLocation *EndOfSegmentLocation `json:"endOfSegmentLocation,omitempty"`
  2240  	// Location: Inserts the text at a specific index in the document. Text must be
  2241  	// inserted inside the bounds of an existing Paragraph. For instance, text
  2242  	// cannot be inserted at a table's start index (i.e. between the table and its
  2243  	// preceding paragraph). The text must be inserted in the preceding paragraph.
  2244  	Location *Location `json:"location,omitempty"`
  2245  	// Text: The text to be inserted. Inserting a newline character will implicitly
  2246  	// create a new Paragraph at that index. The paragraph style of the new
  2247  	// paragraph will be copied from the paragraph at the current insertion index,
  2248  	// including lists and bullets. Text styles for inserted text will be
  2249  	// determined automatically, generally preserving the styling of neighboring
  2250  	// text. In most cases, the text style for the inserted text will match the
  2251  	// text immediately before the insertion index. Some control characters
  2252  	// (U+0000-U+0008, U+000C-U+001F) and characters from the Unicode Basic
  2253  	// Multilingual Plane Private Use Area (U+E000-U+F8FF) will be stripped out of
  2254  	// the inserted text.
  2255  	Text string `json:"text,omitempty"`
  2256  	// ForceSendFields is a list of field names (e.g. "EndOfSegmentLocation") to
  2257  	// unconditionally include in API requests. By default, fields with empty or
  2258  	// default values are omitted from API requests. See
  2259  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2260  	// details.
  2261  	ForceSendFields []string `json:"-"`
  2262  	// NullFields is a list of field names (e.g. "EndOfSegmentLocation") to include
  2263  	// in API requests with the JSON null value. By default, fields with empty
  2264  	// values are omitted from API requests. See
  2265  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2266  	NullFields []string `json:"-"`
  2267  }
  2268  
  2269  func (s *InsertTextRequest) MarshalJSON() ([]byte, error) {
  2270  	type NoMethod InsertTextRequest
  2271  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2272  }
  2273  
  2274  // Link: A reference to another portion of a document or an external URL
  2275  // resource.
  2276  type Link struct {
  2277  	// BookmarkId: The ID of a bookmark in this document.
  2278  	BookmarkId string `json:"bookmarkId,omitempty"`
  2279  	// HeadingId: The ID of a heading in this document.
  2280  	HeadingId string `json:"headingId,omitempty"`
  2281  	// Url: An external URL.
  2282  	Url string `json:"url,omitempty"`
  2283  	// ForceSendFields is a list of field names (e.g. "BookmarkId") to
  2284  	// unconditionally include in API requests. By default, fields with empty or
  2285  	// default values are omitted from API requests. See
  2286  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2287  	// details.
  2288  	ForceSendFields []string `json:"-"`
  2289  	// NullFields is a list of field names (e.g. "BookmarkId") to include in API
  2290  	// requests with the JSON null value. By default, fields with empty values are
  2291  	// omitted from API requests. See
  2292  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2293  	NullFields []string `json:"-"`
  2294  }
  2295  
  2296  func (s *Link) MarshalJSON() ([]byte, error) {
  2297  	type NoMethod Link
  2298  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2299  }
  2300  
  2301  // LinkedContentReference: A reference to the external linked source content.
  2302  type LinkedContentReference struct {
  2303  	// SheetsChartReference: A reference to the linked chart.
  2304  	SheetsChartReference *SheetsChartReference `json:"sheetsChartReference,omitempty"`
  2305  	// ForceSendFields is a list of field names (e.g. "SheetsChartReference") to
  2306  	// unconditionally include in API requests. By default, fields with empty or
  2307  	// default values are omitted from API requests. See
  2308  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2309  	// details.
  2310  	ForceSendFields []string `json:"-"`
  2311  	// NullFields is a list of field names (e.g. "SheetsChartReference") to include
  2312  	// in API requests with the JSON null value. By default, fields with empty
  2313  	// values are omitted from API requests. See
  2314  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2315  	NullFields []string `json:"-"`
  2316  }
  2317  
  2318  func (s *LinkedContentReference) MarshalJSON() ([]byte, error) {
  2319  	type NoMethod LinkedContentReference
  2320  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2321  }
  2322  
  2323  // LinkedContentReferenceSuggestionState: A mask that indicates which of the
  2324  // fields on the base LinkedContentReference have been changed in this
  2325  // suggestion. For any field set to true, there's a new suggested value.
  2326  type LinkedContentReferenceSuggestionState struct {
  2327  	// SheetsChartReferenceSuggestionState: A mask that indicates which of the
  2328  	// fields in sheets_chart_reference have been changed in this suggestion.
  2329  	SheetsChartReferenceSuggestionState *SheetsChartReferenceSuggestionState `json:"sheetsChartReferenceSuggestionState,omitempty"`
  2330  	// ForceSendFields is a list of field names (e.g.
  2331  	// "SheetsChartReferenceSuggestionState") to unconditionally include in API
  2332  	// requests. By default, fields with empty or default values are omitted from
  2333  	// API requests. See
  2334  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2335  	// details.
  2336  	ForceSendFields []string `json:"-"`
  2337  	// NullFields is a list of field names (e.g.
  2338  	// "SheetsChartReferenceSuggestionState") to include in API requests with the
  2339  	// JSON null value. By default, fields with empty values are omitted from API
  2340  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-NullFields for
  2341  	// more details.
  2342  	NullFields []string `json:"-"`
  2343  }
  2344  
  2345  func (s *LinkedContentReferenceSuggestionState) MarshalJSON() ([]byte, error) {
  2346  	type NoMethod LinkedContentReferenceSuggestionState
  2347  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2348  }
  2349  
  2350  // List: A List represents the list attributes for a group of paragraphs that
  2351  // all belong to the same list. A paragraph that's part of a list has a
  2352  // reference to the list's ID in its bullet.
  2353  type List struct {
  2354  	// ListProperties: The properties of the list.
  2355  	ListProperties *ListProperties `json:"listProperties,omitempty"`
  2356  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  2357  	// no suggested deletions of this list.
  2358  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  2359  	// SuggestedInsertionId: The suggested insertion ID. If empty, then this is not
  2360  	// a suggested insertion.
  2361  	SuggestedInsertionId string `json:"suggestedInsertionId,omitempty"`
  2362  	// SuggestedListPropertiesChanges: The suggested changes to the list
  2363  	// properties, keyed by suggestion ID.
  2364  	SuggestedListPropertiesChanges map[string]SuggestedListProperties `json:"suggestedListPropertiesChanges,omitempty"`
  2365  	// ForceSendFields is a list of field names (e.g. "ListProperties") to
  2366  	// unconditionally include in API requests. By default, fields with empty or
  2367  	// default values are omitted from API requests. See
  2368  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2369  	// details.
  2370  	ForceSendFields []string `json:"-"`
  2371  	// NullFields is a list of field names (e.g. "ListProperties") to include in
  2372  	// API requests with the JSON null value. By default, fields with empty values
  2373  	// are omitted from API requests. See
  2374  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2375  	NullFields []string `json:"-"`
  2376  }
  2377  
  2378  func (s *List) MarshalJSON() ([]byte, error) {
  2379  	type NoMethod List
  2380  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2381  }
  2382  
  2383  // ListProperties: The properties of a list that describe the look and feel of
  2384  // bullets belonging to paragraphs associated with a list.
  2385  type ListProperties struct {
  2386  	// NestingLevels: Describes the properties of the bullets at the associated
  2387  	// level. A list has at most 9 levels of nesting with nesting level 0
  2388  	// corresponding to the top-most level and nesting level 8 corresponding to the
  2389  	// most nested level. The nesting levels are returned in ascending order with
  2390  	// the least nested returned first.
  2391  	NestingLevels []*NestingLevel `json:"nestingLevels,omitempty"`
  2392  	// ForceSendFields is a list of field names (e.g. "NestingLevels") to
  2393  	// unconditionally include in API requests. By default, fields with empty or
  2394  	// default values are omitted from API requests. See
  2395  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2396  	// details.
  2397  	ForceSendFields []string `json:"-"`
  2398  	// NullFields is a list of field names (e.g. "NestingLevels") to include in API
  2399  	// requests with the JSON null value. By default, fields with empty values are
  2400  	// omitted from API requests. See
  2401  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2402  	NullFields []string `json:"-"`
  2403  }
  2404  
  2405  func (s *ListProperties) MarshalJSON() ([]byte, error) {
  2406  	type NoMethod ListProperties
  2407  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2408  }
  2409  
  2410  // ListPropertiesSuggestionState: A mask that indicates which of the fields on
  2411  // the base ListProperties have been changed in this suggestion. For any field
  2412  // set to true, there's a new suggested value.
  2413  type ListPropertiesSuggestionState struct {
  2414  	// NestingLevelsSuggestionStates: A mask that indicates which of the fields on
  2415  	// the corresponding NestingLevel in nesting_levels have been changed in this
  2416  	// suggestion. The nesting level suggestion states are returned in ascending
  2417  	// order of the nesting level with the least nested returned first.
  2418  	NestingLevelsSuggestionStates []*NestingLevelSuggestionState `json:"nestingLevelsSuggestionStates,omitempty"`
  2419  	// ForceSendFields is a list of field names (e.g.
  2420  	// "NestingLevelsSuggestionStates") to unconditionally include in API requests.
  2421  	// By default, fields with empty or default values are omitted from API
  2422  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  2423  	// for more details.
  2424  	ForceSendFields []string `json:"-"`
  2425  	// NullFields is a list of field names (e.g. "NestingLevelsSuggestionStates")
  2426  	// to include in API requests with the JSON null value. By default, fields with
  2427  	// empty values are omitted from API requests. See
  2428  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2429  	NullFields []string `json:"-"`
  2430  }
  2431  
  2432  func (s *ListPropertiesSuggestionState) MarshalJSON() ([]byte, error) {
  2433  	type NoMethod ListPropertiesSuggestionState
  2434  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2435  }
  2436  
  2437  // Location: A particular location in the document.
  2438  type Location struct {
  2439  	// Index: The zero-based index, in UTF-16 code units. The index is relative to
  2440  	// the beginning of the segment specified by segment_id.
  2441  	Index int64 `json:"index,omitempty"`
  2442  	// SegmentId: The ID of the header, footer or footnote the location is in. An
  2443  	// empty segment ID signifies the document's body.
  2444  	SegmentId string `json:"segmentId,omitempty"`
  2445  	// ForceSendFields is a list of field names (e.g. "Index") to unconditionally
  2446  	// include in API requests. By default, fields with empty or default values are
  2447  	// omitted from API requests. See
  2448  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2449  	// details.
  2450  	ForceSendFields []string `json:"-"`
  2451  	// NullFields is a list of field names (e.g. "Index") to include in API
  2452  	// requests with the JSON null value. By default, fields with empty values are
  2453  	// omitted from API requests. See
  2454  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2455  	NullFields []string `json:"-"`
  2456  }
  2457  
  2458  func (s *Location) MarshalJSON() ([]byte, error) {
  2459  	type NoMethod Location
  2460  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2461  }
  2462  
  2463  // MergeTableCellsRequest: Merges cells in a Table.
  2464  type MergeTableCellsRequest struct {
  2465  	// TableRange: The table range specifying which cells of the table to merge.
  2466  	// Any text in the cells being merged will be concatenated and stored in the
  2467  	// "head" cell of the range. This is the upper-left cell of the range when the
  2468  	// content direction is left to right, and the upper-right cell of the range
  2469  	// otherwise. If the range is non-rectangular (which can occur in some cases
  2470  	// where the range covers cells that are already merged or where the table is
  2471  	// non-rectangular), a 400 bad request error is returned.
  2472  	TableRange *TableRange `json:"tableRange,omitempty"`
  2473  	// ForceSendFields is a list of field names (e.g. "TableRange") to
  2474  	// unconditionally include in API requests. By default, fields with empty or
  2475  	// default values are omitted from API requests. See
  2476  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2477  	// details.
  2478  	ForceSendFields []string `json:"-"`
  2479  	// NullFields is a list of field names (e.g. "TableRange") to include in API
  2480  	// requests with the JSON null value. By default, fields with empty values are
  2481  	// omitted from API requests. See
  2482  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2483  	NullFields []string `json:"-"`
  2484  }
  2485  
  2486  func (s *MergeTableCellsRequest) MarshalJSON() ([]byte, error) {
  2487  	type NoMethod MergeTableCellsRequest
  2488  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2489  }
  2490  
  2491  // NamedRange: A collection of Ranges with the same named range ID. Named
  2492  // ranges allow developers to associate parts of a document with an arbitrary
  2493  // user-defined label so their contents can be programmatically read or edited
  2494  // later. A document can contain multiple named ranges with the same name, but
  2495  // every named range has a unique ID. A named range is created with a single
  2496  // Range, and content inserted inside a named range generally expands that
  2497  // range. However, certain document changes can cause the range to be split
  2498  // into multiple ranges. Named ranges are not private. All applications and
  2499  // collaborators that have access to the document can see its named ranges.
  2500  type NamedRange struct {
  2501  	// Name: The name of the named range.
  2502  	Name string `json:"name,omitempty"`
  2503  	// NamedRangeId: The ID of the named range.
  2504  	NamedRangeId string `json:"namedRangeId,omitempty"`
  2505  	// Ranges: The ranges that belong to this named range.
  2506  	Ranges []*Range `json:"ranges,omitempty"`
  2507  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  2508  	// include in API requests. By default, fields with empty or default values are
  2509  	// omitted from API requests. See
  2510  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2511  	// details.
  2512  	ForceSendFields []string `json:"-"`
  2513  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  2514  	// with the JSON null value. By default, fields with empty values are omitted
  2515  	// from API requests. See
  2516  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2517  	NullFields []string `json:"-"`
  2518  }
  2519  
  2520  func (s *NamedRange) MarshalJSON() ([]byte, error) {
  2521  	type NoMethod NamedRange
  2522  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2523  }
  2524  
  2525  // NamedRanges: A collection of all the NamedRanges in the document that share
  2526  // a given name.
  2527  type NamedRanges struct {
  2528  	// Name: The name that all the named ranges share.
  2529  	Name string `json:"name,omitempty"`
  2530  	// NamedRanges: The NamedRanges that share the same name.
  2531  	NamedRanges []*NamedRange `json:"namedRanges,omitempty"`
  2532  	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
  2533  	// include in API requests. By default, fields with empty or default values are
  2534  	// omitted from API requests. See
  2535  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2536  	// details.
  2537  	ForceSendFields []string `json:"-"`
  2538  	// NullFields is a list of field names (e.g. "Name") to include in API requests
  2539  	// with the JSON null value. By default, fields with empty values are omitted
  2540  	// from API requests. See
  2541  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2542  	NullFields []string `json:"-"`
  2543  }
  2544  
  2545  func (s *NamedRanges) MarshalJSON() ([]byte, error) {
  2546  	type NoMethod NamedRanges
  2547  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2548  }
  2549  
  2550  // NamedStyle: A named style. Paragraphs in the document can inherit their
  2551  // TextStyle and ParagraphStyle from this named style when they have the same
  2552  // named style type.
  2553  type NamedStyle struct {
  2554  	// NamedStyleType: The type of this named style.
  2555  	//
  2556  	// Possible values:
  2557  	//   "NAMED_STYLE_TYPE_UNSPECIFIED" - The type of named style is unspecified.
  2558  	//   "NORMAL_TEXT" - Normal text.
  2559  	//   "TITLE" - Title.
  2560  	//   "SUBTITLE" - Subtitle.
  2561  	//   "HEADING_1" - Heading 1.
  2562  	//   "HEADING_2" - Heading 2.
  2563  	//   "HEADING_3" - Heading 3.
  2564  	//   "HEADING_4" - Heading 4.
  2565  	//   "HEADING_5" - Heading 5.
  2566  	//   "HEADING_6" - Heading 6.
  2567  	NamedStyleType string `json:"namedStyleType,omitempty"`
  2568  	// ParagraphStyle: The paragraph style of this named style.
  2569  	ParagraphStyle *ParagraphStyle `json:"paragraphStyle,omitempty"`
  2570  	// TextStyle: The text style of this named style.
  2571  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  2572  	// ForceSendFields is a list of field names (e.g. "NamedStyleType") to
  2573  	// unconditionally include in API requests. By default, fields with empty or
  2574  	// default values are omitted from API requests. See
  2575  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2576  	// details.
  2577  	ForceSendFields []string `json:"-"`
  2578  	// NullFields is a list of field names (e.g. "NamedStyleType") to include in
  2579  	// API requests with the JSON null value. By default, fields with empty values
  2580  	// are omitted from API requests. See
  2581  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2582  	NullFields []string `json:"-"`
  2583  }
  2584  
  2585  func (s *NamedStyle) MarshalJSON() ([]byte, error) {
  2586  	type NoMethod NamedStyle
  2587  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2588  }
  2589  
  2590  // NamedStyleSuggestionState: A suggestion state of a NamedStyle message.
  2591  type NamedStyleSuggestionState struct {
  2592  	// NamedStyleType: The named style type that this suggestion state corresponds
  2593  	// to. This field is provided as a convenience for matching the
  2594  	// NamedStyleSuggestionState with its corresponding NamedStyle.
  2595  	//
  2596  	// Possible values:
  2597  	//   "NAMED_STYLE_TYPE_UNSPECIFIED" - The type of named style is unspecified.
  2598  	//   "NORMAL_TEXT" - Normal text.
  2599  	//   "TITLE" - Title.
  2600  	//   "SUBTITLE" - Subtitle.
  2601  	//   "HEADING_1" - Heading 1.
  2602  	//   "HEADING_2" - Heading 2.
  2603  	//   "HEADING_3" - Heading 3.
  2604  	//   "HEADING_4" - Heading 4.
  2605  	//   "HEADING_5" - Heading 5.
  2606  	//   "HEADING_6" - Heading 6.
  2607  	NamedStyleType string `json:"namedStyleType,omitempty"`
  2608  	// ParagraphStyleSuggestionState: A mask that indicates which of the fields in
  2609  	// paragraph style have been changed in this suggestion.
  2610  	ParagraphStyleSuggestionState *ParagraphStyleSuggestionState `json:"paragraphStyleSuggestionState,omitempty"`
  2611  	// TextStyleSuggestionState: A mask that indicates which of the fields in text
  2612  	// style have been changed in this suggestion.
  2613  	TextStyleSuggestionState *TextStyleSuggestionState `json:"textStyleSuggestionState,omitempty"`
  2614  	// ForceSendFields is a list of field names (e.g. "NamedStyleType") to
  2615  	// unconditionally include in API requests. By default, fields with empty or
  2616  	// default values are omitted from API requests. See
  2617  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2618  	// details.
  2619  	ForceSendFields []string `json:"-"`
  2620  	// NullFields is a list of field names (e.g. "NamedStyleType") to include in
  2621  	// API requests with the JSON null value. By default, fields with empty values
  2622  	// are omitted from API requests. See
  2623  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2624  	NullFields []string `json:"-"`
  2625  }
  2626  
  2627  func (s *NamedStyleSuggestionState) MarshalJSON() ([]byte, error) {
  2628  	type NoMethod NamedStyleSuggestionState
  2629  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2630  }
  2631  
  2632  // NamedStyles: The named styles. Paragraphs in the document can inherit their
  2633  // TextStyle and ParagraphStyle from these named styles.
  2634  type NamedStyles struct {
  2635  	// Styles: The named styles. There's an entry for each of the possible named
  2636  	// style types.
  2637  	Styles []*NamedStyle `json:"styles,omitempty"`
  2638  	// ForceSendFields is a list of field names (e.g. "Styles") to unconditionally
  2639  	// include in API requests. By default, fields with empty or default values are
  2640  	// omitted from API requests. See
  2641  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2642  	// details.
  2643  	ForceSendFields []string `json:"-"`
  2644  	// NullFields is a list of field names (e.g. "Styles") to include in API
  2645  	// requests with the JSON null value. By default, fields with empty values are
  2646  	// omitted from API requests. See
  2647  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2648  	NullFields []string `json:"-"`
  2649  }
  2650  
  2651  func (s *NamedStyles) MarshalJSON() ([]byte, error) {
  2652  	type NoMethod NamedStyles
  2653  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2654  }
  2655  
  2656  // NamedStylesSuggestionState: The suggestion state of a NamedStyles message.
  2657  type NamedStylesSuggestionState struct {
  2658  	// StylesSuggestionStates: A mask that indicates which of the fields on the
  2659  	// corresponding NamedStyle in styles have been changed in this suggestion. The
  2660  	// order of these named style suggestion states matches the order of the
  2661  	// corresponding named style within the named styles suggestion.
  2662  	StylesSuggestionStates []*NamedStyleSuggestionState `json:"stylesSuggestionStates,omitempty"`
  2663  	// ForceSendFields is a list of field names (e.g. "StylesSuggestionStates") to
  2664  	// unconditionally include in API requests. By default, fields with empty or
  2665  	// default values are omitted from API requests. See
  2666  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2667  	// details.
  2668  	ForceSendFields []string `json:"-"`
  2669  	// NullFields is a list of field names (e.g. "StylesSuggestionStates") to
  2670  	// include in API requests with the JSON null value. By default, fields with
  2671  	// empty values are omitted from API requests. See
  2672  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2673  	NullFields []string `json:"-"`
  2674  }
  2675  
  2676  func (s *NamedStylesSuggestionState) MarshalJSON() ([]byte, error) {
  2677  	type NoMethod NamedStylesSuggestionState
  2678  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2679  }
  2680  
  2681  // NestingLevel: Contains properties describing the look and feel of a list
  2682  // bullet at a given level of nesting.
  2683  type NestingLevel struct {
  2684  	// BulletAlignment: The alignment of the bullet within the space allotted for
  2685  	// rendering the bullet.
  2686  	//
  2687  	// Possible values:
  2688  	//   "BULLET_ALIGNMENT_UNSPECIFIED" - The bullet alignment is unspecified.
  2689  	//   "START" - The bullet is aligned to the start of the space allotted for
  2690  	// rendering the bullet. Left-aligned for LTR text, right-aligned otherwise.
  2691  	//   "CENTER" - The bullet is aligned to the center of the space allotted for
  2692  	// rendering the bullet.
  2693  	//   "END" - The bullet is aligned to the end of the space allotted for
  2694  	// rendering the bullet. Right-aligned for LTR text, left-aligned otherwise.
  2695  	BulletAlignment string `json:"bulletAlignment,omitempty"`
  2696  	// GlyphFormat: The format string used by bullets at this level of nesting. The
  2697  	// glyph format contains one or more placeholders, and these placeholders are
  2698  	// replaced with the appropriate values depending on the glyph_type or
  2699  	// glyph_symbol. The placeholders follow the pattern `%[nesting_level]`.
  2700  	// Furthermore, placeholders can have prefixes and suffixes. Thus, the glyph
  2701  	// format follows the pattern `%[nesting_level]`. Note that the prefix and
  2702  	// suffix are optional and can be arbitrary strings. For example, the glyph
  2703  	// format `%0.` indicates that the rendered glyph will replace the placeholder
  2704  	// with the corresponding glyph for nesting level 0 followed by a period as the
  2705  	// suffix. So a list with a glyph type of UPPER_ALPHA and glyph format `%0.` at
  2706  	// nesting level 0 will result in a list with rendered glyphs `A.` `B.` `C.`
  2707  	// The glyph format can contain placeholders for the current nesting level as
  2708  	// well as placeholders for parent nesting levels. For example, a list can have
  2709  	// a glyph format of `%0.` at nesting level 0 and a glyph format of `%0.%1.` at
  2710  	// nesting level 1. Assuming both nesting levels have DECIMAL glyph types, this
  2711  	// would result in a list with rendered glyphs `1.` `2.` ` 2.1.` ` 2.2.` `3.`
  2712  	// For nesting levels that are ordered, the string that replaces a placeholder
  2713  	// in the glyph format for a particular paragraph depends on the paragraph's
  2714  	// order within the list.
  2715  	GlyphFormat string `json:"glyphFormat,omitempty"`
  2716  	// GlyphSymbol: A custom glyph symbol used by bullets when paragraphs at this
  2717  	// level of nesting are unordered. The glyph symbol replaces placeholders
  2718  	// within the glyph_format. For example, if the glyph_symbol is the solid
  2719  	// circle corresponding to Unicode U+25cf code point and the glyph_format is
  2720  	// `%0`, the rendered glyph would be the solid circle.
  2721  	GlyphSymbol string `json:"glyphSymbol,omitempty"`
  2722  	// GlyphType: The type of glyph used by bullets when paragraphs at this level
  2723  	// of nesting are ordered. The glyph type determines the type of glyph used to
  2724  	// replace placeholders within the glyph_format when paragraphs at this level
  2725  	// of nesting are ordered. For example, if the nesting level is 0, the
  2726  	// glyph_format is `%0.` and the glyph type is DECIMAL, then the rendered glyph
  2727  	// would replace the placeholder `%0` in the glyph format with a number
  2728  	// corresponding to list item's order within the list.
  2729  	//
  2730  	// Possible values:
  2731  	//   "GLYPH_TYPE_UNSPECIFIED" - The glyph type is unspecified or unsupported.
  2732  	//   "NONE" - An empty string.
  2733  	//   "DECIMAL" - A number, like `1`, `2`, or `3`.
  2734  	//   "ZERO_DECIMAL" - A number where single digit numbers are prefixed with a
  2735  	// zero, like `01`, `02`, or `03`. Numbers with more than one digit are not
  2736  	// prefixed with a zero.
  2737  	//   "UPPER_ALPHA" - An uppercase letter, like `A`, `B`, or `C`.
  2738  	//   "ALPHA" - A lowercase letter, like `a`, `b`, or `c`.
  2739  	//   "UPPER_ROMAN" - An uppercase Roman numeral, like `I`, `II`, or `III`.
  2740  	//   "ROMAN" - A lowercase Roman numeral, like `i`, `ii`, or `iii`.
  2741  	GlyphType string `json:"glyphType,omitempty"`
  2742  	// IndentFirstLine: The amount of indentation for the first line of paragraphs
  2743  	// at this level of nesting.
  2744  	IndentFirstLine *Dimension `json:"indentFirstLine,omitempty"`
  2745  	// IndentStart: The amount of indentation for paragraphs at this level of
  2746  	// nesting. Applied to the side that corresponds to the start of the text,
  2747  	// based on the paragraph's content direction.
  2748  	IndentStart *Dimension `json:"indentStart,omitempty"`
  2749  	// StartNumber: The number of the first list item at this nesting level. A
  2750  	// value of 0 is treated as a value of 1 for lettered lists and Roman numeral
  2751  	// lists. For values of both 0 and 1, lettered and Roman numeral lists will
  2752  	// begin at `a` and `i` respectively. This value is ignored for nesting levels
  2753  	// with unordered glyphs.
  2754  	StartNumber int64 `json:"startNumber,omitempty"`
  2755  	// TextStyle: The text style of bullets at this level of nesting.
  2756  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  2757  	// ForceSendFields is a list of field names (e.g. "BulletAlignment") to
  2758  	// unconditionally include in API requests. By default, fields with empty or
  2759  	// default values are omitted from API requests. See
  2760  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2761  	// details.
  2762  	ForceSendFields []string `json:"-"`
  2763  	// NullFields is a list of field names (e.g. "BulletAlignment") to include in
  2764  	// API requests with the JSON null value. By default, fields with empty values
  2765  	// are omitted from API requests. See
  2766  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2767  	NullFields []string `json:"-"`
  2768  }
  2769  
  2770  func (s *NestingLevel) MarshalJSON() ([]byte, error) {
  2771  	type NoMethod NestingLevel
  2772  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2773  }
  2774  
  2775  // NestingLevelSuggestionState: A mask that indicates which of the fields on
  2776  // the base NestingLevel have been changed in this suggestion. For any field
  2777  // set to true, there's a new suggested value.
  2778  type NestingLevelSuggestionState struct {
  2779  	// BulletAlignmentSuggested: Indicates if there was a suggested change to
  2780  	// bullet_alignment.
  2781  	BulletAlignmentSuggested bool `json:"bulletAlignmentSuggested,omitempty"`
  2782  	// GlyphFormatSuggested: Indicates if there was a suggested change to
  2783  	// glyph_format.
  2784  	GlyphFormatSuggested bool `json:"glyphFormatSuggested,omitempty"`
  2785  	// GlyphSymbolSuggested: Indicates if there was a suggested change to
  2786  	// glyph_symbol.
  2787  	GlyphSymbolSuggested bool `json:"glyphSymbolSuggested,omitempty"`
  2788  	// GlyphTypeSuggested: Indicates if there was a suggested change to glyph_type.
  2789  	GlyphTypeSuggested bool `json:"glyphTypeSuggested,omitempty"`
  2790  	// IndentFirstLineSuggested: Indicates if there was a suggested change to
  2791  	// indent_first_line.
  2792  	IndentFirstLineSuggested bool `json:"indentFirstLineSuggested,omitempty"`
  2793  	// IndentStartSuggested: Indicates if there was a suggested change to
  2794  	// indent_start.
  2795  	IndentStartSuggested bool `json:"indentStartSuggested,omitempty"`
  2796  	// StartNumberSuggested: Indicates if there was a suggested change to
  2797  	// start_number.
  2798  	StartNumberSuggested bool `json:"startNumberSuggested,omitempty"`
  2799  	// TextStyleSuggestionState: A mask that indicates which of the fields in text
  2800  	// style have been changed in this suggestion.
  2801  	TextStyleSuggestionState *TextStyleSuggestionState `json:"textStyleSuggestionState,omitempty"`
  2802  	// ForceSendFields is a list of field names (e.g. "BulletAlignmentSuggested")
  2803  	// to unconditionally include in API requests. By default, fields with empty or
  2804  	// default values are omitted from API requests. See
  2805  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2806  	// details.
  2807  	ForceSendFields []string `json:"-"`
  2808  	// NullFields is a list of field names (e.g. "BulletAlignmentSuggested") to
  2809  	// include in API requests with the JSON null value. By default, fields with
  2810  	// empty values are omitted from API requests. See
  2811  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2812  	NullFields []string `json:"-"`
  2813  }
  2814  
  2815  func (s *NestingLevelSuggestionState) MarshalJSON() ([]byte, error) {
  2816  	type NoMethod NestingLevelSuggestionState
  2817  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2818  }
  2819  
  2820  // ObjectReferences: A collection of object IDs.
  2821  type ObjectReferences struct {
  2822  	// ObjectIds: The object IDs.
  2823  	ObjectIds []string `json:"objectIds,omitempty"`
  2824  	// ForceSendFields is a list of field names (e.g. "ObjectIds") to
  2825  	// unconditionally include in API requests. By default, fields with empty or
  2826  	// default values are omitted from API requests. See
  2827  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2828  	// details.
  2829  	ForceSendFields []string `json:"-"`
  2830  	// NullFields is a list of field names (e.g. "ObjectIds") to include in API
  2831  	// requests with the JSON null value. By default, fields with empty values are
  2832  	// omitted from API requests. See
  2833  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2834  	NullFields []string `json:"-"`
  2835  }
  2836  
  2837  func (s *ObjectReferences) MarshalJSON() ([]byte, error) {
  2838  	type NoMethod ObjectReferences
  2839  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2840  }
  2841  
  2842  // OptionalColor: A color that can either be fully opaque or fully transparent.
  2843  type OptionalColor struct {
  2844  	// Color: If set, this will be used as an opaque color. If unset, this
  2845  	// represents a transparent color.
  2846  	Color *Color `json:"color,omitempty"`
  2847  	// ForceSendFields is a list of field names (e.g. "Color") to unconditionally
  2848  	// include in API requests. By default, fields with empty or default values are
  2849  	// omitted from API requests. See
  2850  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2851  	// details.
  2852  	ForceSendFields []string `json:"-"`
  2853  	// NullFields is a list of field names (e.g. "Color") to include in API
  2854  	// requests with the JSON null value. By default, fields with empty values are
  2855  	// omitted from API requests. See
  2856  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2857  	NullFields []string `json:"-"`
  2858  }
  2859  
  2860  func (s *OptionalColor) MarshalJSON() ([]byte, error) {
  2861  	type NoMethod OptionalColor
  2862  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2863  }
  2864  
  2865  // PageBreak: A ParagraphElement representing a page break. A page break makes
  2866  // the subsequent text start at the top of the next page.
  2867  type PageBreak struct {
  2868  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  2869  	// no suggested deletions of this content.
  2870  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  2871  	// SuggestedInsertionIds: The suggested insertion IDs. A PageBreak may have
  2872  	// multiple insertion IDs if it's a nested suggested change. If empty, then
  2873  	// this is not a suggested insertion.
  2874  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  2875  	// SuggestedTextStyleChanges: The suggested text style changes to this
  2876  	// PageBreak, keyed by suggestion ID.
  2877  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
  2878  	// TextStyle: The text style of this PageBreak. Similar to text content, like
  2879  	// text runs and footnote references, the text style of a page break can affect
  2880  	// content layout as well as the styling of text inserted next to it.
  2881  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  2882  	// ForceSendFields is a list of field names (e.g. "SuggestedDeletionIds") to
  2883  	// unconditionally include in API requests. By default, fields with empty or
  2884  	// default values are omitted from API requests. See
  2885  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2886  	// details.
  2887  	ForceSendFields []string `json:"-"`
  2888  	// NullFields is a list of field names (e.g. "SuggestedDeletionIds") to include
  2889  	// in API requests with the JSON null value. By default, fields with empty
  2890  	// values are omitted from API requests. See
  2891  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2892  	NullFields []string `json:"-"`
  2893  }
  2894  
  2895  func (s *PageBreak) MarshalJSON() ([]byte, error) {
  2896  	type NoMethod PageBreak
  2897  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2898  }
  2899  
  2900  // Paragraph: A StructuralElement representing a paragraph. A paragraph is a
  2901  // range of content that's terminated with a newline character.
  2902  type Paragraph struct {
  2903  	// Bullet: The bullet for this paragraph. If not present, the paragraph does
  2904  	// not belong to a list.
  2905  	Bullet *Bullet `json:"bullet,omitempty"`
  2906  	// Elements: The content of the paragraph, broken down into its component
  2907  	// parts.
  2908  	Elements []*ParagraphElement `json:"elements,omitempty"`
  2909  	// ParagraphStyle: The style of this paragraph.
  2910  	ParagraphStyle *ParagraphStyle `json:"paragraphStyle,omitempty"`
  2911  	// PositionedObjectIds: The IDs of the positioned objects tethered to this
  2912  	// paragraph.
  2913  	PositionedObjectIds []string `json:"positionedObjectIds,omitempty"`
  2914  	// SuggestedBulletChanges: The suggested changes to this paragraph's bullet.
  2915  	SuggestedBulletChanges map[string]SuggestedBullet `json:"suggestedBulletChanges,omitempty"`
  2916  	// SuggestedParagraphStyleChanges: The suggested paragraph style changes to
  2917  	// this paragraph, keyed by suggestion ID.
  2918  	SuggestedParagraphStyleChanges map[string]SuggestedParagraphStyle `json:"suggestedParagraphStyleChanges,omitempty"`
  2919  	// SuggestedPositionedObjectIds: The IDs of the positioned objects suggested to
  2920  	// be attached to this paragraph, keyed by suggestion ID.
  2921  	SuggestedPositionedObjectIds map[string]ObjectReferences `json:"suggestedPositionedObjectIds,omitempty"`
  2922  	// ForceSendFields is a list of field names (e.g. "Bullet") to unconditionally
  2923  	// include in API requests. By default, fields with empty or default values are
  2924  	// omitted from API requests. See
  2925  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2926  	// details.
  2927  	ForceSendFields []string `json:"-"`
  2928  	// NullFields is a list of field names (e.g. "Bullet") to include in API
  2929  	// requests with the JSON null value. By default, fields with empty values are
  2930  	// omitted from API requests. See
  2931  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2932  	NullFields []string `json:"-"`
  2933  }
  2934  
  2935  func (s *Paragraph) MarshalJSON() ([]byte, error) {
  2936  	type NoMethod Paragraph
  2937  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2938  }
  2939  
  2940  // ParagraphBorder: A border around a paragraph.
  2941  type ParagraphBorder struct {
  2942  	// Color: The color of the border.
  2943  	Color *OptionalColor `json:"color,omitempty"`
  2944  	// DashStyle: The dash style of the border.
  2945  	//
  2946  	// Possible values:
  2947  	//   "DASH_STYLE_UNSPECIFIED" - Unspecified dash style.
  2948  	//   "SOLID" - Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  2949  	// 'solid'. This is the default dash style.
  2950  	//   "DOT" - Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  2951  	// 'dot'.
  2952  	//   "DASH" - Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  2953  	// 'dash'.
  2954  	DashStyle string `json:"dashStyle,omitempty"`
  2955  	// Padding: The padding of the border.
  2956  	Padding *Dimension `json:"padding,omitempty"`
  2957  	// Width: The width of the border.
  2958  	Width *Dimension `json:"width,omitempty"`
  2959  	// ForceSendFields is a list of field names (e.g. "Color") to unconditionally
  2960  	// include in API requests. By default, fields with empty or default values are
  2961  	// omitted from API requests. See
  2962  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  2963  	// details.
  2964  	ForceSendFields []string `json:"-"`
  2965  	// NullFields is a list of field names (e.g. "Color") to include in API
  2966  	// requests with the JSON null value. By default, fields with empty values are
  2967  	// omitted from API requests. See
  2968  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  2969  	NullFields []string `json:"-"`
  2970  }
  2971  
  2972  func (s *ParagraphBorder) MarshalJSON() ([]byte, error) {
  2973  	type NoMethod ParagraphBorder
  2974  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  2975  }
  2976  
  2977  // ParagraphElement: A ParagraphElement describes content within a Paragraph.
  2978  type ParagraphElement struct {
  2979  	// AutoText: An auto text paragraph element.
  2980  	AutoText *AutoText `json:"autoText,omitempty"`
  2981  	// ColumnBreak: A column break paragraph element.
  2982  	ColumnBreak *ColumnBreak `json:"columnBreak,omitempty"`
  2983  	// EndIndex: The zero-base end index of this paragraph element, exclusive, in
  2984  	// UTF-16 code units.
  2985  	EndIndex int64 `json:"endIndex,omitempty"`
  2986  	// Equation: An equation paragraph element.
  2987  	Equation *Equation `json:"equation,omitempty"`
  2988  	// FootnoteReference: A footnote reference paragraph element.
  2989  	FootnoteReference *FootnoteReference `json:"footnoteReference,omitempty"`
  2990  	// HorizontalRule: A horizontal rule paragraph element.
  2991  	HorizontalRule *HorizontalRule `json:"horizontalRule,omitempty"`
  2992  	// InlineObjectElement: An inline object paragraph element.
  2993  	InlineObjectElement *InlineObjectElement `json:"inlineObjectElement,omitempty"`
  2994  	// PageBreak: A page break paragraph element.
  2995  	PageBreak *PageBreak `json:"pageBreak,omitempty"`
  2996  	// Person: A paragraph element that links to a person or email address.
  2997  	Person *Person `json:"person,omitempty"`
  2998  	// RichLink: A paragraph element that links to a Google resource (such as a
  2999  	// file in Google Drive, a YouTube video, or a Calendar event.)
  3000  	RichLink *RichLink `json:"richLink,omitempty"`
  3001  	// StartIndex: The zero-based start index of this paragraph element, in UTF-16
  3002  	// code units.
  3003  	StartIndex int64 `json:"startIndex,omitempty"`
  3004  	// TextRun: A text run paragraph element.
  3005  	TextRun *TextRun `json:"textRun,omitempty"`
  3006  	// ForceSendFields is a list of field names (e.g. "AutoText") to
  3007  	// unconditionally include in API requests. By default, fields with empty or
  3008  	// default values are omitted from API requests. See
  3009  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3010  	// details.
  3011  	ForceSendFields []string `json:"-"`
  3012  	// NullFields is a list of field names (e.g. "AutoText") to include in API
  3013  	// requests with the JSON null value. By default, fields with empty values are
  3014  	// omitted from API requests. See
  3015  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3016  	NullFields []string `json:"-"`
  3017  }
  3018  
  3019  func (s *ParagraphElement) MarshalJSON() ([]byte, error) {
  3020  	type NoMethod ParagraphElement
  3021  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3022  }
  3023  
  3024  // ParagraphStyle: Styles that apply to a whole paragraph. Inherited paragraph
  3025  // styles are represented as unset fields in this message. A paragraph style's
  3026  // parent depends on where the paragraph style is defined: * The ParagraphStyle
  3027  // on a Paragraph inherits from the paragraph's corresponding named style type.
  3028  // * The ParagraphStyle on a named style inherits from the normal text named
  3029  // style. * The ParagraphStyle of the normal text named style inherits from the
  3030  // default paragraph style in the Docs editor. * The ParagraphStyle on a
  3031  // Paragraph element that's contained in a table may inherit its paragraph
  3032  // style from the table style. If the paragraph style does not inherit from a
  3033  // parent, unsetting fields will revert the style to a value matching the
  3034  // defaults in the Docs editor.
  3035  type ParagraphStyle struct {
  3036  	// Alignment: The text alignment for this paragraph.
  3037  	//
  3038  	// Possible values:
  3039  	//   "ALIGNMENT_UNSPECIFIED" - The paragraph alignment is inherited from the
  3040  	// parent.
  3041  	//   "START" - The paragraph is aligned to the start of the line. Left-aligned
  3042  	// for LTR text, right-aligned otherwise.
  3043  	//   "CENTER" - The paragraph is centered.
  3044  	//   "END" - The paragraph is aligned to the end of the line. Right-aligned for
  3045  	// LTR text, left-aligned otherwise.
  3046  	//   "JUSTIFIED" - The paragraph is justified.
  3047  	Alignment string `json:"alignment,omitempty"`
  3048  	// AvoidWidowAndOrphan: Whether to avoid widows and orphans for the paragraph.
  3049  	// If unset, the value is inherited from the parent.
  3050  	AvoidWidowAndOrphan bool `json:"avoidWidowAndOrphan,omitempty"`
  3051  	// BorderBetween: The border between this paragraph and the next and previous
  3052  	// paragraphs. If unset, the value is inherited from the parent. The between
  3053  	// border is rendered when the adjacent paragraph has the same border and
  3054  	// indent properties. Paragraph borders cannot be partially updated. When
  3055  	// changing a paragraph border, the new border must be specified in its
  3056  	// entirety.
  3057  	BorderBetween *ParagraphBorder `json:"borderBetween,omitempty"`
  3058  	// BorderBottom: The border at the bottom of this paragraph. If unset, the
  3059  	// value is inherited from the parent. The bottom border is rendered when the
  3060  	// paragraph below has different border and indent properties. Paragraph
  3061  	// borders cannot be partially updated. When changing a paragraph border, the
  3062  	// new border must be specified in its entirety.
  3063  	BorderBottom *ParagraphBorder `json:"borderBottom,omitempty"`
  3064  	// BorderLeft: The border to the left of this paragraph. If unset, the value is
  3065  	// inherited from the parent. Paragraph borders cannot be partially updated.
  3066  	// When changing a paragraph border, the new border must be specified in its
  3067  	// entirety.
  3068  	BorderLeft *ParagraphBorder `json:"borderLeft,omitempty"`
  3069  	// BorderRight: The border to the right of this paragraph. If unset, the value
  3070  	// is inherited from the parent. Paragraph borders cannot be partially updated.
  3071  	// When changing a paragraph border, the new border must be specified in its
  3072  	// entirety.
  3073  	BorderRight *ParagraphBorder `json:"borderRight,omitempty"`
  3074  	// BorderTop: The border at the top of this paragraph. If unset, the value is
  3075  	// inherited from the parent. The top border is rendered when the paragraph
  3076  	// above has different border and indent properties. Paragraph borders cannot
  3077  	// be partially updated. When changing a paragraph border, the new border must
  3078  	// be specified in its entirety.
  3079  	BorderTop *ParagraphBorder `json:"borderTop,omitempty"`
  3080  	// Direction: The text direction of this paragraph. If unset, the value
  3081  	// defaults to LEFT_TO_RIGHT since paragraph direction is not inherited.
  3082  	//
  3083  	// Possible values:
  3084  	//   "CONTENT_DIRECTION_UNSPECIFIED" - The content direction is unspecified.
  3085  	//   "LEFT_TO_RIGHT" - The content goes from left to right.
  3086  	//   "RIGHT_TO_LEFT" - The content goes from right to left.
  3087  	Direction string `json:"direction,omitempty"`
  3088  	// HeadingId: The heading ID of the paragraph. If empty, then this paragraph is
  3089  	// not a heading. This property is read-only.
  3090  	HeadingId string `json:"headingId,omitempty"`
  3091  	// IndentEnd: The amount of indentation for the paragraph on the side that
  3092  	// corresponds to the end of the text, based on the current paragraph
  3093  	// direction. If unset, the value is inherited from the parent.
  3094  	IndentEnd *Dimension `json:"indentEnd,omitempty"`
  3095  	// IndentFirstLine: The amount of indentation for the first line of the
  3096  	// paragraph. If unset, the value is inherited from the parent.
  3097  	IndentFirstLine *Dimension `json:"indentFirstLine,omitempty"`
  3098  	// IndentStart: The amount of indentation for the paragraph on the side that
  3099  	// corresponds to the start of the text, based on the current paragraph
  3100  	// direction. If unset, the value is inherited from the parent.
  3101  	IndentStart *Dimension `json:"indentStart,omitempty"`
  3102  	// KeepLinesTogether: Whether all lines of the paragraph should be laid out on
  3103  	// the same page or column if possible. If unset, the value is inherited from
  3104  	// the parent.
  3105  	KeepLinesTogether bool `json:"keepLinesTogether,omitempty"`
  3106  	// KeepWithNext: Whether at least a part of this paragraph should be laid out
  3107  	// on the same page or column as the next paragraph if possible. If unset, the
  3108  	// value is inherited from the parent.
  3109  	KeepWithNext bool `json:"keepWithNext,omitempty"`
  3110  	// LineSpacing: The amount of space between lines, as a percentage of normal,
  3111  	// where normal is represented as 100.0. If unset, the value is inherited from
  3112  	// the parent.
  3113  	LineSpacing float64 `json:"lineSpacing,omitempty"`
  3114  	// NamedStyleType: The named style type of the paragraph. Since updating the
  3115  	// named style type affects other properties within ParagraphStyle, the named
  3116  	// style type is applied before the other properties are updated.
  3117  	//
  3118  	// Possible values:
  3119  	//   "NAMED_STYLE_TYPE_UNSPECIFIED" - The type of named style is unspecified.
  3120  	//   "NORMAL_TEXT" - Normal text.
  3121  	//   "TITLE" - Title.
  3122  	//   "SUBTITLE" - Subtitle.
  3123  	//   "HEADING_1" - Heading 1.
  3124  	//   "HEADING_2" - Heading 2.
  3125  	//   "HEADING_3" - Heading 3.
  3126  	//   "HEADING_4" - Heading 4.
  3127  	//   "HEADING_5" - Heading 5.
  3128  	//   "HEADING_6" - Heading 6.
  3129  	NamedStyleType string `json:"namedStyleType,omitempty"`
  3130  	// PageBreakBefore: Whether the current paragraph should always start at the
  3131  	// beginning of a page. If unset, the value is inherited from the parent.
  3132  	// Attempting to update page_break_before for paragraphs in unsupported
  3133  	// regions, including Table, Header, Footer and Footnote, can result in an
  3134  	// invalid document state that returns a 400 bad request error.
  3135  	PageBreakBefore bool `json:"pageBreakBefore,omitempty"`
  3136  	// Shading: The shading of the paragraph. If unset, the value is inherited from
  3137  	// the parent.
  3138  	Shading *Shading `json:"shading,omitempty"`
  3139  	// SpaceAbove: The amount of extra space above the paragraph. If unset, the
  3140  	// value is inherited from the parent.
  3141  	SpaceAbove *Dimension `json:"spaceAbove,omitempty"`
  3142  	// SpaceBelow: The amount of extra space below the paragraph. If unset, the
  3143  	// value is inherited from the parent.
  3144  	SpaceBelow *Dimension `json:"spaceBelow,omitempty"`
  3145  	// SpacingMode: The spacing mode for the paragraph.
  3146  	//
  3147  	// Possible values:
  3148  	//   "SPACING_MODE_UNSPECIFIED" - The spacing mode is inherited from the
  3149  	// parent.
  3150  	//   "NEVER_COLLAPSE" - Paragraph spacing is always rendered.
  3151  	//   "COLLAPSE_LISTS" - Paragraph spacing is skipped between list elements.
  3152  	SpacingMode string `json:"spacingMode,omitempty"`
  3153  	// TabStops: A list of the tab stops for this paragraph. The list of tab stops
  3154  	// is not inherited. This property is read-only.
  3155  	TabStops []*TabStop `json:"tabStops,omitempty"`
  3156  	// ForceSendFields is a list of field names (e.g. "Alignment") to
  3157  	// unconditionally include in API requests. By default, fields with empty or
  3158  	// default values are omitted from API requests. See
  3159  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3160  	// details.
  3161  	ForceSendFields []string `json:"-"`
  3162  	// NullFields is a list of field names (e.g. "Alignment") to include in API
  3163  	// requests with the JSON null value. By default, fields with empty values are
  3164  	// omitted from API requests. See
  3165  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3166  	NullFields []string `json:"-"`
  3167  }
  3168  
  3169  func (s *ParagraphStyle) MarshalJSON() ([]byte, error) {
  3170  	type NoMethod ParagraphStyle
  3171  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3172  }
  3173  
  3174  func (s *ParagraphStyle) UnmarshalJSON(data []byte) error {
  3175  	type NoMethod ParagraphStyle
  3176  	var s1 struct {
  3177  		LineSpacing gensupport.JSONFloat64 `json:"lineSpacing"`
  3178  		*NoMethod
  3179  	}
  3180  	s1.NoMethod = (*NoMethod)(s)
  3181  	if err := json.Unmarshal(data, &s1); err != nil {
  3182  		return err
  3183  	}
  3184  	s.LineSpacing = float64(s1.LineSpacing)
  3185  	return nil
  3186  }
  3187  
  3188  // ParagraphStyleSuggestionState: A mask that indicates which of the fields on
  3189  // the base ParagraphStyle have been changed in this suggestion. For any field
  3190  // set to true, there's a new suggested value.
  3191  type ParagraphStyleSuggestionState struct {
  3192  	// AlignmentSuggested: Indicates if there was a suggested change to alignment.
  3193  	AlignmentSuggested bool `json:"alignmentSuggested,omitempty"`
  3194  	// AvoidWidowAndOrphanSuggested: Indicates if there was a suggested change to
  3195  	// avoid_widow_and_orphan.
  3196  	AvoidWidowAndOrphanSuggested bool `json:"avoidWidowAndOrphanSuggested,omitempty"`
  3197  	// BorderBetweenSuggested: Indicates if there was a suggested change to
  3198  	// border_between.
  3199  	BorderBetweenSuggested bool `json:"borderBetweenSuggested,omitempty"`
  3200  	// BorderBottomSuggested: Indicates if there was a suggested change to
  3201  	// border_bottom.
  3202  	BorderBottomSuggested bool `json:"borderBottomSuggested,omitempty"`
  3203  	// BorderLeftSuggested: Indicates if there was a suggested change to
  3204  	// border_left.
  3205  	BorderLeftSuggested bool `json:"borderLeftSuggested,omitempty"`
  3206  	// BorderRightSuggested: Indicates if there was a suggested change to
  3207  	// border_right.
  3208  	BorderRightSuggested bool `json:"borderRightSuggested,omitempty"`
  3209  	// BorderTopSuggested: Indicates if there was a suggested change to border_top.
  3210  	BorderTopSuggested bool `json:"borderTopSuggested,omitempty"`
  3211  	// DirectionSuggested: Indicates if there was a suggested change to direction.
  3212  	DirectionSuggested bool `json:"directionSuggested,omitempty"`
  3213  	// HeadingIdSuggested: Indicates if there was a suggested change to heading_id.
  3214  	HeadingIdSuggested bool `json:"headingIdSuggested,omitempty"`
  3215  	// IndentEndSuggested: Indicates if there was a suggested change to indent_end.
  3216  	IndentEndSuggested bool `json:"indentEndSuggested,omitempty"`
  3217  	// IndentFirstLineSuggested: Indicates if there was a suggested change to
  3218  	// indent_first_line.
  3219  	IndentFirstLineSuggested bool `json:"indentFirstLineSuggested,omitempty"`
  3220  	// IndentStartSuggested: Indicates if there was a suggested change to
  3221  	// indent_start.
  3222  	IndentStartSuggested bool `json:"indentStartSuggested,omitempty"`
  3223  	// KeepLinesTogetherSuggested: Indicates if there was a suggested change to
  3224  	// keep_lines_together.
  3225  	KeepLinesTogetherSuggested bool `json:"keepLinesTogetherSuggested,omitempty"`
  3226  	// KeepWithNextSuggested: Indicates if there was a suggested change to
  3227  	// keep_with_next.
  3228  	KeepWithNextSuggested bool `json:"keepWithNextSuggested,omitempty"`
  3229  	// LineSpacingSuggested: Indicates if there was a suggested change to
  3230  	// line_spacing.
  3231  	LineSpacingSuggested bool `json:"lineSpacingSuggested,omitempty"`
  3232  	// NamedStyleTypeSuggested: Indicates if there was a suggested change to
  3233  	// named_style_type.
  3234  	NamedStyleTypeSuggested bool `json:"namedStyleTypeSuggested,omitempty"`
  3235  	// PageBreakBeforeSuggested: Indicates if there was a suggested change to
  3236  	// page_break_before.
  3237  	PageBreakBeforeSuggested bool `json:"pageBreakBeforeSuggested,omitempty"`
  3238  	// ShadingSuggestionState: A mask that indicates which of the fields in shading
  3239  	// have been changed in this suggestion.
  3240  	ShadingSuggestionState *ShadingSuggestionState `json:"shadingSuggestionState,omitempty"`
  3241  	// SpaceAboveSuggested: Indicates if there was a suggested change to
  3242  	// space_above.
  3243  	SpaceAboveSuggested bool `json:"spaceAboveSuggested,omitempty"`
  3244  	// SpaceBelowSuggested: Indicates if there was a suggested change to
  3245  	// space_below.
  3246  	SpaceBelowSuggested bool `json:"spaceBelowSuggested,omitempty"`
  3247  	// SpacingModeSuggested: Indicates if there was a suggested change to
  3248  	// spacing_mode.
  3249  	SpacingModeSuggested bool `json:"spacingModeSuggested,omitempty"`
  3250  	// ForceSendFields is a list of field names (e.g. "AlignmentSuggested") to
  3251  	// unconditionally include in API requests. By default, fields with empty or
  3252  	// default values are omitted from API requests. See
  3253  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3254  	// details.
  3255  	ForceSendFields []string `json:"-"`
  3256  	// NullFields is a list of field names (e.g. "AlignmentSuggested") to include
  3257  	// in API requests with the JSON null value. By default, fields with empty
  3258  	// values are omitted from API requests. See
  3259  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3260  	NullFields []string `json:"-"`
  3261  }
  3262  
  3263  func (s *ParagraphStyleSuggestionState) MarshalJSON() ([]byte, error) {
  3264  	type NoMethod ParagraphStyleSuggestionState
  3265  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3266  }
  3267  
  3268  // Person: A person or email address mentioned in a document. These mentions
  3269  // behave as a single, immutable element containing the person's name or email
  3270  // address.
  3271  type Person struct {
  3272  	// PersonId: Output only. The unique ID of this link.
  3273  	PersonId string `json:"personId,omitempty"`
  3274  	// PersonProperties: Output only. The properties of this Person. This field is
  3275  	// always present.
  3276  	PersonProperties *PersonProperties `json:"personProperties,omitempty"`
  3277  	// SuggestedDeletionIds: IDs for suggestions that remove this person link from
  3278  	// the document. A Person might have multiple deletion IDs if, for example,
  3279  	// multiple users suggest deleting it. If empty, then this person link isn't
  3280  	// suggested for deletion.
  3281  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  3282  	// SuggestedInsertionIds: IDs for suggestions that insert this person link into
  3283  	// the document. A Person might have multiple insertion IDs if it's a nested
  3284  	// suggested change (a suggestion within a suggestion made by a different user,
  3285  	// for example). If empty, then this person link isn't a suggested insertion.
  3286  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  3287  	// SuggestedTextStyleChanges: The suggested text style changes to this Person,
  3288  	// keyed by suggestion ID.
  3289  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
  3290  	// TextStyle: The text style of this Person.
  3291  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  3292  	// ForceSendFields is a list of field names (e.g. "PersonId") to
  3293  	// unconditionally include in API requests. By default, fields with empty or
  3294  	// default values are omitted from API requests. See
  3295  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3296  	// details.
  3297  	ForceSendFields []string `json:"-"`
  3298  	// NullFields is a list of field names (e.g. "PersonId") to include in API
  3299  	// requests with the JSON null value. By default, fields with empty values are
  3300  	// omitted from API requests. See
  3301  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3302  	NullFields []string `json:"-"`
  3303  }
  3304  
  3305  func (s *Person) MarshalJSON() ([]byte, error) {
  3306  	type NoMethod Person
  3307  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3308  }
  3309  
  3310  // PersonProperties: Properties specific to a linked Person.
  3311  type PersonProperties struct {
  3312  	// Email: Output only. The email address linked to this Person. This field is
  3313  	// always present.
  3314  	Email string `json:"email,omitempty"`
  3315  	// Name: Output only. The name of the person if it's displayed in the link text
  3316  	// instead of the person's email address.
  3317  	Name string `json:"name,omitempty"`
  3318  	// ForceSendFields is a list of field names (e.g. "Email") to unconditionally
  3319  	// include in API requests. By default, fields with empty or default values are
  3320  	// omitted from API requests. See
  3321  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3322  	// details.
  3323  	ForceSendFields []string `json:"-"`
  3324  	// NullFields is a list of field names (e.g. "Email") to include in API
  3325  	// requests with the JSON null value. By default, fields with empty values are
  3326  	// omitted from API requests. See
  3327  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3328  	NullFields []string `json:"-"`
  3329  }
  3330  
  3331  func (s *PersonProperties) MarshalJSON() ([]byte, error) {
  3332  	type NoMethod PersonProperties
  3333  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3334  }
  3335  
  3336  // PinTableHeaderRowsRequest: Updates the number of pinned table header rows in
  3337  // a table.
  3338  type PinTableHeaderRowsRequest struct {
  3339  	// PinnedHeaderRowsCount: The number of table rows to pin, where 0 implies that
  3340  	// all rows are unpinned.
  3341  	PinnedHeaderRowsCount int64 `json:"pinnedHeaderRowsCount,omitempty"`
  3342  	// TableStartLocation: The location where the table starts in the document.
  3343  	TableStartLocation *Location `json:"tableStartLocation,omitempty"`
  3344  	// ForceSendFields is a list of field names (e.g. "PinnedHeaderRowsCount") to
  3345  	// unconditionally include in API requests. By default, fields with empty or
  3346  	// default values are omitted from API requests. See
  3347  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3348  	// details.
  3349  	ForceSendFields []string `json:"-"`
  3350  	// NullFields is a list of field names (e.g. "PinnedHeaderRowsCount") to
  3351  	// include in API requests with the JSON null value. By default, fields with
  3352  	// empty values are omitted from API requests. See
  3353  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3354  	NullFields []string `json:"-"`
  3355  }
  3356  
  3357  func (s *PinTableHeaderRowsRequest) MarshalJSON() ([]byte, error) {
  3358  	type NoMethod PinTableHeaderRowsRequest
  3359  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3360  }
  3361  
  3362  // PositionedObject: An object that's tethered to a Paragraph and positioned
  3363  // relative to the beginning of the paragraph. A PositionedObject contains an
  3364  // EmbeddedObject such as an image.
  3365  type PositionedObject struct {
  3366  	// ObjectId: The ID of this positioned object.
  3367  	ObjectId string `json:"objectId,omitempty"`
  3368  	// PositionedObjectProperties: The properties of this positioned object.
  3369  	PositionedObjectProperties *PositionedObjectProperties `json:"positionedObjectProperties,omitempty"`
  3370  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  3371  	// no suggested deletions of this content.
  3372  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  3373  	// SuggestedInsertionId: The suggested insertion ID. If empty, then this is not
  3374  	// a suggested insertion.
  3375  	SuggestedInsertionId string `json:"suggestedInsertionId,omitempty"`
  3376  	// SuggestedPositionedObjectPropertiesChanges: The suggested changes to the
  3377  	// positioned object properties, keyed by suggestion ID.
  3378  	SuggestedPositionedObjectPropertiesChanges map[string]SuggestedPositionedObjectProperties `json:"suggestedPositionedObjectPropertiesChanges,omitempty"`
  3379  	// ForceSendFields is a list of field names (e.g. "ObjectId") to
  3380  	// unconditionally include in API requests. By default, fields with empty or
  3381  	// default values are omitted from API requests. See
  3382  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3383  	// details.
  3384  	ForceSendFields []string `json:"-"`
  3385  	// NullFields is a list of field names (e.g. "ObjectId") to include in API
  3386  	// requests with the JSON null value. By default, fields with empty values are
  3387  	// omitted from API requests. See
  3388  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3389  	NullFields []string `json:"-"`
  3390  }
  3391  
  3392  func (s *PositionedObject) MarshalJSON() ([]byte, error) {
  3393  	type NoMethod PositionedObject
  3394  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3395  }
  3396  
  3397  // PositionedObjectPositioning: The positioning of a PositionedObject. The
  3398  // positioned object is positioned relative to the beginning of the Paragraph
  3399  // it's tethered to.
  3400  type PositionedObjectPositioning struct {
  3401  	// Layout: The layout of this positioned object.
  3402  	//
  3403  	// Possible values:
  3404  	//   "POSITIONED_OBJECT_LAYOUT_UNSPECIFIED" - The layout is unspecified.
  3405  	//   "WRAP_TEXT" - The text wraps around the positioned object.
  3406  	//   "BREAK_LEFT" - Breaks text such that the positioned object is on the left
  3407  	// and text is on the right.
  3408  	//   "BREAK_RIGHT" - Breaks text such that the positioned object is on the
  3409  	// right and text is on the left.
  3410  	//   "BREAK_LEFT_RIGHT" - Breaks text such that there's no text on the left or
  3411  	// right of the positioned object.
  3412  	//   "IN_FRONT_OF_TEXT" - The positioned object is in front of the text.
  3413  	//   "BEHIND_TEXT" - The positioned object is behind the text.
  3414  	Layout string `json:"layout,omitempty"`
  3415  	// LeftOffset: The offset of the left edge of the positioned object relative to
  3416  	// the beginning of the Paragraph it's tethered to. The exact positioning of
  3417  	// the object can depend on other content in the document and the document's
  3418  	// styling.
  3419  	LeftOffset *Dimension `json:"leftOffset,omitempty"`
  3420  	// TopOffset: The offset of the top edge of the positioned object relative to
  3421  	// the beginning of the Paragraph it's tethered to. The exact positioning of
  3422  	// the object can depend on other content in the document and the document's
  3423  	// styling.
  3424  	TopOffset *Dimension `json:"topOffset,omitempty"`
  3425  	// ForceSendFields is a list of field names (e.g. "Layout") to unconditionally
  3426  	// include in API requests. By default, fields with empty or default values are
  3427  	// omitted from API requests. See
  3428  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3429  	// details.
  3430  	ForceSendFields []string `json:"-"`
  3431  	// NullFields is a list of field names (e.g. "Layout") to include in API
  3432  	// requests with the JSON null value. By default, fields with empty values are
  3433  	// omitted from API requests. See
  3434  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3435  	NullFields []string `json:"-"`
  3436  }
  3437  
  3438  func (s *PositionedObjectPositioning) MarshalJSON() ([]byte, error) {
  3439  	type NoMethod PositionedObjectPositioning
  3440  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3441  }
  3442  
  3443  // PositionedObjectPositioningSuggestionState: A mask that indicates which of
  3444  // the fields on the base PositionedObjectPositioning have been changed in this
  3445  // suggestion. For any field set to true, there's a new suggested value.
  3446  type PositionedObjectPositioningSuggestionState struct {
  3447  	// LayoutSuggested: Indicates if there was a suggested change to layout.
  3448  	LayoutSuggested bool `json:"layoutSuggested,omitempty"`
  3449  	// LeftOffsetSuggested: Indicates if there was a suggested change to
  3450  	// left_offset.
  3451  	LeftOffsetSuggested bool `json:"leftOffsetSuggested,omitempty"`
  3452  	// TopOffsetSuggested: Indicates if there was a suggested change to top_offset.
  3453  	TopOffsetSuggested bool `json:"topOffsetSuggested,omitempty"`
  3454  	// ForceSendFields is a list of field names (e.g. "LayoutSuggested") to
  3455  	// unconditionally include in API requests. By default, fields with empty or
  3456  	// default values are omitted from API requests. See
  3457  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3458  	// details.
  3459  	ForceSendFields []string `json:"-"`
  3460  	// NullFields is a list of field names (e.g. "LayoutSuggested") to include in
  3461  	// API requests with the JSON null value. By default, fields with empty values
  3462  	// are omitted from API requests. See
  3463  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3464  	NullFields []string `json:"-"`
  3465  }
  3466  
  3467  func (s *PositionedObjectPositioningSuggestionState) MarshalJSON() ([]byte, error) {
  3468  	type NoMethod PositionedObjectPositioningSuggestionState
  3469  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3470  }
  3471  
  3472  // PositionedObjectProperties: Properties of a PositionedObject.
  3473  type PositionedObjectProperties struct {
  3474  	// EmbeddedObject: The embedded object of this positioned object.
  3475  	EmbeddedObject *EmbeddedObject `json:"embeddedObject,omitempty"`
  3476  	// Positioning: The positioning of this positioned object relative to the
  3477  	// newline of the Paragraph that references this positioned object.
  3478  	Positioning *PositionedObjectPositioning `json:"positioning,omitempty"`
  3479  	// ForceSendFields is a list of field names (e.g. "EmbeddedObject") to
  3480  	// unconditionally include in API requests. By default, fields with empty or
  3481  	// default values are omitted from API requests. See
  3482  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3483  	// details.
  3484  	ForceSendFields []string `json:"-"`
  3485  	// NullFields is a list of field names (e.g. "EmbeddedObject") to include in
  3486  	// API requests with the JSON null value. By default, fields with empty values
  3487  	// are omitted from API requests. See
  3488  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3489  	NullFields []string `json:"-"`
  3490  }
  3491  
  3492  func (s *PositionedObjectProperties) MarshalJSON() ([]byte, error) {
  3493  	type NoMethod PositionedObjectProperties
  3494  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3495  }
  3496  
  3497  // PositionedObjectPropertiesSuggestionState: A mask that indicates which of
  3498  // the fields on the base PositionedObjectProperties have been changed in this
  3499  // suggestion. For any field set to true, there's a new suggested value.
  3500  type PositionedObjectPropertiesSuggestionState struct {
  3501  	// EmbeddedObjectSuggestionState: A mask that indicates which of the fields in
  3502  	// embedded_object have been changed in this suggestion.
  3503  	EmbeddedObjectSuggestionState *EmbeddedObjectSuggestionState `json:"embeddedObjectSuggestionState,omitempty"`
  3504  	// PositioningSuggestionState: A mask that indicates which of the fields in
  3505  	// positioning have been changed in this suggestion.
  3506  	PositioningSuggestionState *PositionedObjectPositioningSuggestionState `json:"positioningSuggestionState,omitempty"`
  3507  	// ForceSendFields is a list of field names (e.g.
  3508  	// "EmbeddedObjectSuggestionState") to unconditionally include in API requests.
  3509  	// By default, fields with empty or default values are omitted from API
  3510  	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
  3511  	// for more details.
  3512  	ForceSendFields []string `json:"-"`
  3513  	// NullFields is a list of field names (e.g. "EmbeddedObjectSuggestionState")
  3514  	// to include in API requests with the JSON null value. By default, fields with
  3515  	// empty values are omitted from API requests. See
  3516  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3517  	NullFields []string `json:"-"`
  3518  }
  3519  
  3520  func (s *PositionedObjectPropertiesSuggestionState) MarshalJSON() ([]byte, error) {
  3521  	type NoMethod PositionedObjectPropertiesSuggestionState
  3522  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3523  }
  3524  
  3525  // Range: Specifies a contiguous range of text.
  3526  type Range struct {
  3527  	// EndIndex: The zero-based end index of this range, exclusive, in UTF-16 code
  3528  	// units. In all current uses, an end index must be provided. This field is an
  3529  	// Int32Value in order to accommodate future use cases with open-ended ranges.
  3530  	EndIndex int64 `json:"endIndex,omitempty"`
  3531  	// SegmentId: The ID of the header, footer, or footnote that this range is
  3532  	// contained in. An empty segment ID signifies the document's body.
  3533  	SegmentId string `json:"segmentId,omitempty"`
  3534  	// StartIndex: The zero-based start index of this range, in UTF-16 code units.
  3535  	// In all current uses, a start index must be provided. This field is an
  3536  	// Int32Value in order to accommodate future use cases with open-ended ranges.
  3537  	StartIndex int64 `json:"startIndex,omitempty"`
  3538  	// ForceSendFields is a list of field names (e.g. "EndIndex") to
  3539  	// unconditionally include in API requests. By default, fields with empty or
  3540  	// default values are omitted from API requests. See
  3541  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3542  	// details.
  3543  	ForceSendFields []string `json:"-"`
  3544  	// NullFields is a list of field names (e.g. "EndIndex") to include in API
  3545  	// requests with the JSON null value. By default, fields with empty values are
  3546  	// omitted from API requests. See
  3547  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3548  	NullFields []string `json:"-"`
  3549  }
  3550  
  3551  func (s *Range) MarshalJSON() ([]byte, error) {
  3552  	type NoMethod Range
  3553  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3554  }
  3555  
  3556  // ReplaceAllTextRequest: Replaces all instances of text matching a criteria
  3557  // with replace text.
  3558  type ReplaceAllTextRequest struct {
  3559  	// ContainsText: Finds text in the document matching this substring.
  3560  	ContainsText *SubstringMatchCriteria `json:"containsText,omitempty"`
  3561  	// ReplaceText: The text that will replace the matched text.
  3562  	ReplaceText string `json:"replaceText,omitempty"`
  3563  	// ForceSendFields is a list of field names (e.g. "ContainsText") to
  3564  	// unconditionally include in API requests. By default, fields with empty or
  3565  	// default values are omitted from API requests. See
  3566  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3567  	// details.
  3568  	ForceSendFields []string `json:"-"`
  3569  	// NullFields is a list of field names (e.g. "ContainsText") to include in API
  3570  	// requests with the JSON null value. By default, fields with empty values are
  3571  	// omitted from API requests. See
  3572  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3573  	NullFields []string `json:"-"`
  3574  }
  3575  
  3576  func (s *ReplaceAllTextRequest) MarshalJSON() ([]byte, error) {
  3577  	type NoMethod ReplaceAllTextRequest
  3578  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3579  }
  3580  
  3581  // ReplaceAllTextResponse: The result of replacing text.
  3582  type ReplaceAllTextResponse struct {
  3583  	// OccurrencesChanged: The number of occurrences changed by replacing all text.
  3584  	OccurrencesChanged int64 `json:"occurrencesChanged,omitempty"`
  3585  	// ForceSendFields is a list of field names (e.g. "OccurrencesChanged") to
  3586  	// unconditionally include in API requests. By default, fields with empty or
  3587  	// default values are omitted from API requests. See
  3588  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3589  	// details.
  3590  	ForceSendFields []string `json:"-"`
  3591  	// NullFields is a list of field names (e.g. "OccurrencesChanged") to include
  3592  	// in API requests with the JSON null value. By default, fields with empty
  3593  	// values are omitted from API requests. See
  3594  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3595  	NullFields []string `json:"-"`
  3596  }
  3597  
  3598  func (s *ReplaceAllTextResponse) MarshalJSON() ([]byte, error) {
  3599  	type NoMethod ReplaceAllTextResponse
  3600  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3601  }
  3602  
  3603  // ReplaceImageRequest: Replaces an existing image with a new image. Replacing
  3604  // an image removes some image effects from the existing image in order to
  3605  // mirror the behavior of the Docs editor.
  3606  type ReplaceImageRequest struct {
  3607  	// ImageObjectId: The ID of the existing image that will be replaced. The ID
  3608  	// can be retrieved from the response of a get request.
  3609  	ImageObjectId string `json:"imageObjectId,omitempty"`
  3610  	// ImageReplaceMethod: The replacement method.
  3611  	//
  3612  	// Possible values:
  3613  	//   "IMAGE_REPLACE_METHOD_UNSPECIFIED" - Unspecified image replace method.
  3614  	// This value must not be used.
  3615  	//   "CENTER_CROP" - Scales and centers the image to fill the bounds of the
  3616  	// original image. The image may be cropped in order to fill the original
  3617  	// image's bounds. The rendered size of the image will be the same as the
  3618  	// original image.
  3619  	ImageReplaceMethod string `json:"imageReplaceMethod,omitempty"`
  3620  	// Uri: The URI of the new image. The image is fetched once at insertion time
  3621  	// and a copy is stored for display inside the document. Images must be less
  3622  	// than 50MB, cannot exceed 25 megapixels, and must be in PNG, JPEG, or GIF
  3623  	// format. The provided URI can't surpass 2 KB in length. The URI is saved with
  3624  	// the image, and exposed through the ImageProperties.source_uri field.
  3625  	Uri string `json:"uri,omitempty"`
  3626  	// ForceSendFields is a list of field names (e.g. "ImageObjectId") to
  3627  	// unconditionally include in API requests. By default, fields with empty or
  3628  	// default values are omitted from API requests. See
  3629  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3630  	// details.
  3631  	ForceSendFields []string `json:"-"`
  3632  	// NullFields is a list of field names (e.g. "ImageObjectId") to include in API
  3633  	// requests with the JSON null value. By default, fields with empty values are
  3634  	// omitted from API requests. See
  3635  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3636  	NullFields []string `json:"-"`
  3637  }
  3638  
  3639  func (s *ReplaceImageRequest) MarshalJSON() ([]byte, error) {
  3640  	type NoMethod ReplaceImageRequest
  3641  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3642  }
  3643  
  3644  // ReplaceNamedRangeContentRequest: Replaces the contents of the specified
  3645  // NamedRange or NamedRanges with the given replacement content. Note that an
  3646  // individual NamedRange may consist of multiple discontinuous ranges. In this
  3647  // case, only the content in the first range will be replaced. The other ranges
  3648  // and their content will be deleted. In cases where replacing or deleting any
  3649  // ranges would result in an invalid document structure, a 400 bad request
  3650  // error is returned.
  3651  type ReplaceNamedRangeContentRequest struct {
  3652  	// NamedRangeId: The ID of the named range whose content will be replaced. If
  3653  	// there is no named range with the given ID a 400 bad request error is
  3654  	// returned.
  3655  	NamedRangeId string `json:"namedRangeId,omitempty"`
  3656  	// NamedRangeName: The name of the NamedRanges whose content will be replaced.
  3657  	// If there are multiple named ranges with the given name, then the content of
  3658  	// each one will be replaced. If there are no named ranges with the given name,
  3659  	// then the request will be a no-op.
  3660  	NamedRangeName string `json:"namedRangeName,omitempty"`
  3661  	// Text: Replaces the content of the specified named range(s) with the given
  3662  	// text.
  3663  	Text string `json:"text,omitempty"`
  3664  	// ForceSendFields is a list of field names (e.g. "NamedRangeId") to
  3665  	// unconditionally include in API requests. By default, fields with empty or
  3666  	// default values are omitted from API requests. See
  3667  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3668  	// details.
  3669  	ForceSendFields []string `json:"-"`
  3670  	// NullFields is a list of field names (e.g. "NamedRangeId") to include in API
  3671  	// requests with the JSON null value. By default, fields with empty values are
  3672  	// omitted from API requests. See
  3673  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3674  	NullFields []string `json:"-"`
  3675  }
  3676  
  3677  func (s *ReplaceNamedRangeContentRequest) MarshalJSON() ([]byte, error) {
  3678  	type NoMethod ReplaceNamedRangeContentRequest
  3679  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3680  }
  3681  
  3682  // Request: A single update to apply to a document.
  3683  type Request struct {
  3684  	// CreateFooter: Creates a footer.
  3685  	CreateFooter *CreateFooterRequest `json:"createFooter,omitempty"`
  3686  	// CreateFootnote: Creates a footnote.
  3687  	CreateFootnote *CreateFootnoteRequest `json:"createFootnote,omitempty"`
  3688  	// CreateHeader: Creates a header.
  3689  	CreateHeader *CreateHeaderRequest `json:"createHeader,omitempty"`
  3690  	// CreateNamedRange: Creates a named range.
  3691  	CreateNamedRange *CreateNamedRangeRequest `json:"createNamedRange,omitempty"`
  3692  	// CreateParagraphBullets: Creates bullets for paragraphs.
  3693  	CreateParagraphBullets *CreateParagraphBulletsRequest `json:"createParagraphBullets,omitempty"`
  3694  	// DeleteContentRange: Deletes content from the document.
  3695  	DeleteContentRange *DeleteContentRangeRequest `json:"deleteContentRange,omitempty"`
  3696  	// DeleteFooter: Deletes a footer from the document.
  3697  	DeleteFooter *DeleteFooterRequest `json:"deleteFooter,omitempty"`
  3698  	// DeleteHeader: Deletes a header from the document.
  3699  	DeleteHeader *DeleteHeaderRequest `json:"deleteHeader,omitempty"`
  3700  	// DeleteNamedRange: Deletes a named range.
  3701  	DeleteNamedRange *DeleteNamedRangeRequest `json:"deleteNamedRange,omitempty"`
  3702  	// DeleteParagraphBullets: Deletes bullets from paragraphs.
  3703  	DeleteParagraphBullets *DeleteParagraphBulletsRequest `json:"deleteParagraphBullets,omitempty"`
  3704  	// DeletePositionedObject: Deletes a positioned object from the document.
  3705  	DeletePositionedObject *DeletePositionedObjectRequest `json:"deletePositionedObject,omitempty"`
  3706  	// DeleteTableColumn: Deletes a column from a table.
  3707  	DeleteTableColumn *DeleteTableColumnRequest `json:"deleteTableColumn,omitempty"`
  3708  	// DeleteTableRow: Deletes a row from a table.
  3709  	DeleteTableRow *DeleteTableRowRequest `json:"deleteTableRow,omitempty"`
  3710  	// InsertInlineImage: Inserts an inline image at the specified location.
  3711  	InsertInlineImage *InsertInlineImageRequest `json:"insertInlineImage,omitempty"`
  3712  	// InsertPageBreak: Inserts a page break at the specified location.
  3713  	InsertPageBreak *InsertPageBreakRequest `json:"insertPageBreak,omitempty"`
  3714  	// InsertSectionBreak: Inserts a section break at the specified location.
  3715  	InsertSectionBreak *InsertSectionBreakRequest `json:"insertSectionBreak,omitempty"`
  3716  	// InsertTable: Inserts a table at the specified location.
  3717  	InsertTable *InsertTableRequest `json:"insertTable,omitempty"`
  3718  	// InsertTableColumn: Inserts an empty column into a table.
  3719  	InsertTableColumn *InsertTableColumnRequest `json:"insertTableColumn,omitempty"`
  3720  	// InsertTableRow: Inserts an empty row into a table.
  3721  	InsertTableRow *InsertTableRowRequest `json:"insertTableRow,omitempty"`
  3722  	// InsertText: Inserts text at the specified location.
  3723  	InsertText *InsertTextRequest `json:"insertText,omitempty"`
  3724  	// MergeTableCells: Merges cells in a table.
  3725  	MergeTableCells *MergeTableCellsRequest `json:"mergeTableCells,omitempty"`
  3726  	// PinTableHeaderRows: Updates the number of pinned header rows in a table.
  3727  	PinTableHeaderRows *PinTableHeaderRowsRequest `json:"pinTableHeaderRows,omitempty"`
  3728  	// ReplaceAllText: Replaces all instances of the specified text.
  3729  	ReplaceAllText *ReplaceAllTextRequest `json:"replaceAllText,omitempty"`
  3730  	// ReplaceImage: Replaces an image in the document.
  3731  	ReplaceImage *ReplaceImageRequest `json:"replaceImage,omitempty"`
  3732  	// ReplaceNamedRangeContent: Replaces the content in a named range.
  3733  	ReplaceNamedRangeContent *ReplaceNamedRangeContentRequest `json:"replaceNamedRangeContent,omitempty"`
  3734  	// UnmergeTableCells: Unmerges cells in a table.
  3735  	UnmergeTableCells *UnmergeTableCellsRequest `json:"unmergeTableCells,omitempty"`
  3736  	// UpdateDocumentStyle: Updates the style of the document.
  3737  	UpdateDocumentStyle *UpdateDocumentStyleRequest `json:"updateDocumentStyle,omitempty"`
  3738  	// UpdateParagraphStyle: Updates the paragraph style at the specified range.
  3739  	UpdateParagraphStyle *UpdateParagraphStyleRequest `json:"updateParagraphStyle,omitempty"`
  3740  	// UpdateSectionStyle: Updates the section style of the specified range.
  3741  	UpdateSectionStyle *UpdateSectionStyleRequest `json:"updateSectionStyle,omitempty"`
  3742  	// UpdateTableCellStyle: Updates the style of table cells.
  3743  	UpdateTableCellStyle *UpdateTableCellStyleRequest `json:"updateTableCellStyle,omitempty"`
  3744  	// UpdateTableColumnProperties: Updates the properties of columns in a table.
  3745  	UpdateTableColumnProperties *UpdateTableColumnPropertiesRequest `json:"updateTableColumnProperties,omitempty"`
  3746  	// UpdateTableRowStyle: Updates the row style in a table.
  3747  	UpdateTableRowStyle *UpdateTableRowStyleRequest `json:"updateTableRowStyle,omitempty"`
  3748  	// UpdateTextStyle: Updates the text style at the specified range.
  3749  	UpdateTextStyle *UpdateTextStyleRequest `json:"updateTextStyle,omitempty"`
  3750  	// ForceSendFields is a list of field names (e.g. "CreateFooter") to
  3751  	// unconditionally include in API requests. By default, fields with empty or
  3752  	// default values are omitted from API requests. See
  3753  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3754  	// details.
  3755  	ForceSendFields []string `json:"-"`
  3756  	// NullFields is a list of field names (e.g. "CreateFooter") to include in API
  3757  	// requests with the JSON null value. By default, fields with empty values are
  3758  	// omitted from API requests. See
  3759  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3760  	NullFields []string `json:"-"`
  3761  }
  3762  
  3763  func (s *Request) MarshalJSON() ([]byte, error) {
  3764  	type NoMethod Request
  3765  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3766  }
  3767  
  3768  // Response: A single response from an update.
  3769  type Response struct {
  3770  	// CreateFooter: The result of creating a footer.
  3771  	CreateFooter *CreateFooterResponse `json:"createFooter,omitempty"`
  3772  	// CreateFootnote: The result of creating a footnote.
  3773  	CreateFootnote *CreateFootnoteResponse `json:"createFootnote,omitempty"`
  3774  	// CreateHeader: The result of creating a header.
  3775  	CreateHeader *CreateHeaderResponse `json:"createHeader,omitempty"`
  3776  	// CreateNamedRange: The result of creating a named range.
  3777  	CreateNamedRange *CreateNamedRangeResponse `json:"createNamedRange,omitempty"`
  3778  	// InsertInlineImage: The result of inserting an inline image.
  3779  	InsertInlineImage *InsertInlineImageResponse `json:"insertInlineImage,omitempty"`
  3780  	// InsertInlineSheetsChart: The result of inserting an inline Google Sheets
  3781  	// chart.
  3782  	InsertInlineSheetsChart *InsertInlineSheetsChartResponse `json:"insertInlineSheetsChart,omitempty"`
  3783  	// ReplaceAllText: The result of replacing text.
  3784  	ReplaceAllText *ReplaceAllTextResponse `json:"replaceAllText,omitempty"`
  3785  	// ForceSendFields is a list of field names (e.g. "CreateFooter") to
  3786  	// unconditionally include in API requests. By default, fields with empty or
  3787  	// default values are omitted from API requests. See
  3788  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3789  	// details.
  3790  	ForceSendFields []string `json:"-"`
  3791  	// NullFields is a list of field names (e.g. "CreateFooter") to include in API
  3792  	// requests with the JSON null value. By default, fields with empty values are
  3793  	// omitted from API requests. See
  3794  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3795  	NullFields []string `json:"-"`
  3796  }
  3797  
  3798  func (s *Response) MarshalJSON() ([]byte, error) {
  3799  	type NoMethod Response
  3800  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3801  }
  3802  
  3803  // RgbColor: An RGB color.
  3804  type RgbColor struct {
  3805  	// Blue: The blue component of the color, from 0.0 to 1.0.
  3806  	Blue float64 `json:"blue,omitempty"`
  3807  	// Green: The green component of the color, from 0.0 to 1.0.
  3808  	Green float64 `json:"green,omitempty"`
  3809  	// Red: The red component of the color, from 0.0 to 1.0.
  3810  	Red float64 `json:"red,omitempty"`
  3811  	// ForceSendFields is a list of field names (e.g. "Blue") to unconditionally
  3812  	// include in API requests. By default, fields with empty or default values are
  3813  	// omitted from API requests. See
  3814  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3815  	// details.
  3816  	ForceSendFields []string `json:"-"`
  3817  	// NullFields is a list of field names (e.g. "Blue") to include in API requests
  3818  	// with the JSON null value. By default, fields with empty values are omitted
  3819  	// from API requests. See
  3820  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3821  	NullFields []string `json:"-"`
  3822  }
  3823  
  3824  func (s *RgbColor) MarshalJSON() ([]byte, error) {
  3825  	type NoMethod RgbColor
  3826  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3827  }
  3828  
  3829  func (s *RgbColor) UnmarshalJSON(data []byte) error {
  3830  	type NoMethod RgbColor
  3831  	var s1 struct {
  3832  		Blue  gensupport.JSONFloat64 `json:"blue"`
  3833  		Green gensupport.JSONFloat64 `json:"green"`
  3834  		Red   gensupport.JSONFloat64 `json:"red"`
  3835  		*NoMethod
  3836  	}
  3837  	s1.NoMethod = (*NoMethod)(s)
  3838  	if err := json.Unmarshal(data, &s1); err != nil {
  3839  		return err
  3840  	}
  3841  	s.Blue = float64(s1.Blue)
  3842  	s.Green = float64(s1.Green)
  3843  	s.Red = float64(s1.Red)
  3844  	return nil
  3845  }
  3846  
  3847  // RichLink: A link to a Google resource (such as a file in Drive, a YouTube
  3848  // video, or a Calendar event).
  3849  type RichLink struct {
  3850  	// RichLinkId: Output only. The ID of this link.
  3851  	RichLinkId string `json:"richLinkId,omitempty"`
  3852  	// RichLinkProperties: Output only. The properties of this RichLink. This field
  3853  	// is always present.
  3854  	RichLinkProperties *RichLinkProperties `json:"richLinkProperties,omitempty"`
  3855  	// SuggestedDeletionIds: IDs for suggestions that remove this link from the
  3856  	// document. A RichLink might have multiple deletion IDs if, for example,
  3857  	// multiple users suggest deleting it. If empty, then this person link isn't
  3858  	// suggested for deletion.
  3859  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  3860  	// SuggestedInsertionIds: IDs for suggestions that insert this link into the
  3861  	// document. A RichLink might have multiple insertion IDs if it's a nested
  3862  	// suggested change (a suggestion within a suggestion made by a different user,
  3863  	// for example). If empty, then this person link isn't a suggested insertion.
  3864  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  3865  	// SuggestedTextStyleChanges: The suggested text style changes to this
  3866  	// RichLink, keyed by suggestion ID.
  3867  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
  3868  	// TextStyle: The text style of this RichLink.
  3869  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  3870  	// ForceSendFields is a list of field names (e.g. "RichLinkId") to
  3871  	// unconditionally include in API requests. By default, fields with empty or
  3872  	// default values are omitted from API requests. See
  3873  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3874  	// details.
  3875  	ForceSendFields []string `json:"-"`
  3876  	// NullFields is a list of field names (e.g. "RichLinkId") to include in API
  3877  	// requests with the JSON null value. By default, fields with empty values are
  3878  	// omitted from API requests. See
  3879  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3880  	NullFields []string `json:"-"`
  3881  }
  3882  
  3883  func (s *RichLink) MarshalJSON() ([]byte, error) {
  3884  	type NoMethod RichLink
  3885  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3886  }
  3887  
  3888  // RichLinkProperties: Properties specific to a RichLink.
  3889  type RichLinkProperties struct {
  3890  	// MimeType: Output only. The MIME type
  3891  	// (https://developers.google.com/drive/api/v3/mime-types) of the RichLink, if
  3892  	// there's one (for example, when it's a file in Drive).
  3893  	MimeType string `json:"mimeType,omitempty"`
  3894  	// Title: Output only. The title of the RichLink as displayed in the link. This
  3895  	// title matches the title of the linked resource at the time of the insertion
  3896  	// or last update of the link. This field is always present.
  3897  	Title string `json:"title,omitempty"`
  3898  	// Uri: Output only. The URI to the RichLink. This is always present.
  3899  	Uri string `json:"uri,omitempty"`
  3900  	// ForceSendFields is a list of field names (e.g. "MimeType") to
  3901  	// unconditionally include in API requests. By default, fields with empty or
  3902  	// default values are omitted from API requests. See
  3903  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3904  	// details.
  3905  	ForceSendFields []string `json:"-"`
  3906  	// NullFields is a list of field names (e.g. "MimeType") to include in API
  3907  	// requests with the JSON null value. By default, fields with empty values are
  3908  	// omitted from API requests. See
  3909  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3910  	NullFields []string `json:"-"`
  3911  }
  3912  
  3913  func (s *RichLinkProperties) MarshalJSON() ([]byte, error) {
  3914  	type NoMethod RichLinkProperties
  3915  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3916  }
  3917  
  3918  // SectionBreak: A StructuralElement representing a section break. A section is
  3919  // a range of content that has the same SectionStyle. A section break
  3920  // represents the start of a new section, and the section style applies to the
  3921  // section after the section break. The document body always begins with a
  3922  // section break.
  3923  type SectionBreak struct {
  3924  	// SectionStyle: The style of the section after this section break.
  3925  	SectionStyle *SectionStyle `json:"sectionStyle,omitempty"`
  3926  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  3927  	// no suggested deletions of this content.
  3928  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  3929  	// SuggestedInsertionIds: The suggested insertion IDs. A SectionBreak may have
  3930  	// multiple insertion IDs if it's a nested suggested change. If empty, then
  3931  	// this is not a suggested insertion.
  3932  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  3933  	// ForceSendFields is a list of field names (e.g. "SectionStyle") to
  3934  	// unconditionally include in API requests. By default, fields with empty or
  3935  	// default values are omitted from API requests. See
  3936  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3937  	// details.
  3938  	ForceSendFields []string `json:"-"`
  3939  	// NullFields is a list of field names (e.g. "SectionStyle") to include in API
  3940  	// requests with the JSON null value. By default, fields with empty values are
  3941  	// omitted from API requests. See
  3942  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3943  	NullFields []string `json:"-"`
  3944  }
  3945  
  3946  func (s *SectionBreak) MarshalJSON() ([]byte, error) {
  3947  	type NoMethod SectionBreak
  3948  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3949  }
  3950  
  3951  // SectionColumnProperties: Properties that apply to a section's column.
  3952  type SectionColumnProperties struct {
  3953  	// PaddingEnd: The padding at the end of the column.
  3954  	PaddingEnd *Dimension `json:"paddingEnd,omitempty"`
  3955  	// Width: Output only. The width of the column.
  3956  	Width *Dimension `json:"width,omitempty"`
  3957  	// ForceSendFields is a list of field names (e.g. "PaddingEnd") to
  3958  	// unconditionally include in API requests. By default, fields with empty or
  3959  	// default values are omitted from API requests. See
  3960  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  3961  	// details.
  3962  	ForceSendFields []string `json:"-"`
  3963  	// NullFields is a list of field names (e.g. "PaddingEnd") to include in API
  3964  	// requests with the JSON null value. By default, fields with empty values are
  3965  	// omitted from API requests. See
  3966  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  3967  	NullFields []string `json:"-"`
  3968  }
  3969  
  3970  func (s *SectionColumnProperties) MarshalJSON() ([]byte, error) {
  3971  	type NoMethod SectionColumnProperties
  3972  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  3973  }
  3974  
  3975  // SectionStyle: The styling that applies to a section.
  3976  type SectionStyle struct {
  3977  	// ColumnProperties: The section's columns properties. If empty, the section
  3978  	// contains one column with the default properties in the Docs editor. A
  3979  	// section can be updated to have no more than 3 columns. When updating this
  3980  	// property, setting a concrete value is required. Unsetting this property will
  3981  	// result in a 400 bad request error.
  3982  	ColumnProperties []*SectionColumnProperties `json:"columnProperties,omitempty"`
  3983  	// ColumnSeparatorStyle: The style of column separators. This style can be set
  3984  	// even when there's one column in the section. When updating this property,
  3985  	// setting a concrete value is required. Unsetting this property results in a
  3986  	// 400 bad request error.
  3987  	//
  3988  	// Possible values:
  3989  	//   "COLUMN_SEPARATOR_STYLE_UNSPECIFIED" - An unspecified column separator
  3990  	// style.
  3991  	//   "NONE" - No column separator lines between columns.
  3992  	//   "BETWEEN_EACH_COLUMN" - Renders a column separator line between each
  3993  	// column.
  3994  	ColumnSeparatorStyle string `json:"columnSeparatorStyle,omitempty"`
  3995  	// ContentDirection: The content direction of this section. If unset, the value
  3996  	// defaults to LEFT_TO_RIGHT. When updating this property, setting a concrete
  3997  	// value is required. Unsetting this property results in a 400 bad request
  3998  	// error.
  3999  	//
  4000  	// Possible values:
  4001  	//   "CONTENT_DIRECTION_UNSPECIFIED" - The content direction is unspecified.
  4002  	//   "LEFT_TO_RIGHT" - The content goes from left to right.
  4003  	//   "RIGHT_TO_LEFT" - The content goes from right to left.
  4004  	ContentDirection string `json:"contentDirection,omitempty"`
  4005  	// DefaultFooterId: The ID of the default footer. If unset, the value inherits
  4006  	// from the previous SectionBreak's SectionStyle. If the value is unset in the
  4007  	// first SectionBreak, it inherits from DocumentStyle's default_footer_id. This
  4008  	// property is read-only.
  4009  	DefaultFooterId string `json:"defaultFooterId,omitempty"`
  4010  	// DefaultHeaderId: The ID of the default header. If unset, the value inherits
  4011  	// from the previous SectionBreak's SectionStyle. If the value is unset in the
  4012  	// first SectionBreak, it inherits from DocumentStyle's default_header_id. This
  4013  	// property is read-only.
  4014  	DefaultHeaderId string `json:"defaultHeaderId,omitempty"`
  4015  	// EvenPageFooterId: The ID of the footer used only for even pages. If the
  4016  	// value of DocumentStyle's use_even_page_header_footer is true, this value is
  4017  	// used for the footers on even pages in the section. If it is false, the
  4018  	// footers on even pages use the default_footer_id. If unset, the value
  4019  	// inherits from the previous SectionBreak's SectionStyle. If the value is
  4020  	// unset in the first SectionBreak, it inherits from DocumentStyle's
  4021  	// even_page_footer_id. This property is read-only.
  4022  	EvenPageFooterId string `json:"evenPageFooterId,omitempty"`
  4023  	// EvenPageHeaderId: The ID of the header used only for even pages. If the
  4024  	// value of DocumentStyle's use_even_page_header_footer is true, this value is
  4025  	// used for the headers on even pages in the section. If it is false, the
  4026  	// headers on even pages use the default_header_id. If unset, the value
  4027  	// inherits from the previous SectionBreak's SectionStyle. If the value is
  4028  	// unset in the first SectionBreak, it inherits from DocumentStyle's
  4029  	// even_page_header_id. This property is read-only.
  4030  	EvenPageHeaderId string `json:"evenPageHeaderId,omitempty"`
  4031  	// FirstPageFooterId: The ID of the footer used only for the first page of the
  4032  	// section. If use_first_page_header_footer is true, this value is used for the
  4033  	// footer on the first page of the section. If it's false, the footer on the
  4034  	// first page of the section uses the default_footer_id. If unset, the value
  4035  	// inherits from the previous SectionBreak's SectionStyle. If the value is
  4036  	// unset in the first SectionBreak, it inherits from DocumentStyle's
  4037  	// first_page_footer_id. This property is read-only.
  4038  	FirstPageFooterId string `json:"firstPageFooterId,omitempty"`
  4039  	// FirstPageHeaderId: The ID of the header used only for the first page of the
  4040  	// section. If use_first_page_header_footer is true, this value is used for the
  4041  	// header on the first page of the section. If it's false, the header on the
  4042  	// first page of the section uses the default_header_id. If unset, the value
  4043  	// inherits from the previous SectionBreak's SectionStyle. If the value is
  4044  	// unset in the first SectionBreak, it inherits from DocumentStyle's
  4045  	// first_page_header_id. This property is read-only.
  4046  	FirstPageHeaderId string `json:"firstPageHeaderId,omitempty"`
  4047  	// FlipPageOrientation: Optional. Indicates whether to flip the dimensions of
  4048  	// DocumentStyle's page_size for this section, which allows changing the page
  4049  	// orientation between portrait and landscape. If unset, the value inherits
  4050  	// from DocumentStyle's flip_page_orientation. When updating this property,
  4051  	// setting a concrete value is required. Unsetting this property results in a
  4052  	// 400 bad request error.
  4053  	FlipPageOrientation bool `json:"flipPageOrientation,omitempty"`
  4054  	// MarginBottom: The bottom page margin of the section. If unset, the value
  4055  	// defaults to margin_bottom from DocumentStyle. When updating this property,
  4056  	// setting a concrete value is required. Unsetting this property results in a
  4057  	// 400 bad request error.
  4058  	MarginBottom *Dimension `json:"marginBottom,omitempty"`
  4059  	// MarginFooter: The footer margin of the section. If unset, the value defaults
  4060  	// to margin_footer from DocumentStyle. If updated,
  4061  	// use_custom_header_footer_margins is set to true on DocumentStyle. The value
  4062  	// of use_custom_header_footer_margins on DocumentStyle indicates if a footer
  4063  	// margin is being respected for this section When updating this property,
  4064  	// setting a concrete value is required. Unsetting this property results in a
  4065  	// 400 bad request error.
  4066  	MarginFooter *Dimension `json:"marginFooter,omitempty"`
  4067  	// MarginHeader: The header margin of the section. If unset, the value defaults
  4068  	// to margin_header from DocumentStyle. If updated,
  4069  	// use_custom_header_footer_margins is set to true on DocumentStyle. The value
  4070  	// of use_custom_header_footer_margins on DocumentStyle indicates if a header
  4071  	// margin is being respected for this section. When updating this property,
  4072  	// setting a concrete value is required. Unsetting this property results in a
  4073  	// 400 bad request error.
  4074  	MarginHeader *Dimension `json:"marginHeader,omitempty"`
  4075  	// MarginLeft: The left page margin of the section. If unset, the value
  4076  	// defaults to margin_left from DocumentStyle. Updating the left margin causes
  4077  	// columns in this section to resize. Since the margin affects column width,
  4078  	// it's applied before column properties. When updating this property, setting
  4079  	// a concrete value is required. Unsetting this property results in a 400 bad
  4080  	// request error.
  4081  	MarginLeft *Dimension `json:"marginLeft,omitempty"`
  4082  	// MarginRight: The right page margin of the section. If unset, the value
  4083  	// defaults to margin_right from DocumentStyle. Updating the right margin
  4084  	// causes columns in this section to resize. Since the margin affects column
  4085  	// width, it's applied before column properties. When updating this property,
  4086  	// setting a concrete value is required. Unsetting this property results in a
  4087  	// 400 bad request error.
  4088  	MarginRight *Dimension `json:"marginRight,omitempty"`
  4089  	// MarginTop: The top page margin of the section. If unset, the value defaults
  4090  	// to margin_top from DocumentStyle. When updating this property, setting a
  4091  	// concrete value is required. Unsetting this property results in a 400 bad
  4092  	// request error.
  4093  	MarginTop *Dimension `json:"marginTop,omitempty"`
  4094  	// PageNumberStart: The page number from which to start counting the number of
  4095  	// pages for this section. If unset, page numbering continues from the previous
  4096  	// section. If the value is unset in the first SectionBreak, refer to
  4097  	// DocumentStyle's page_number_start. When updating this property, setting a
  4098  	// concrete value is required. Unsetting this property results in a 400 bad
  4099  	// request error.
  4100  	PageNumberStart int64 `json:"pageNumberStart,omitempty"`
  4101  	// SectionType: Output only. The type of section.
  4102  	//
  4103  	// Possible values:
  4104  	//   "SECTION_TYPE_UNSPECIFIED" - The section type is unspecified.
  4105  	//   "CONTINUOUS" - The section starts immediately after the last paragraph of
  4106  	// the previous section.
  4107  	//   "NEXT_PAGE" - The section starts on the next page.
  4108  	SectionType string `json:"sectionType,omitempty"`
  4109  	// UseFirstPageHeaderFooter: Indicates whether to use the first page header /
  4110  	// footer IDs for the first page of the section. If unset, it inherits from
  4111  	// DocumentStyle's use_first_page_header_footer for the first section. If the
  4112  	// value is unset for subsequent sectors, it should be interpreted as false.
  4113  	// When updating this property, setting a concrete value is required. Unsetting
  4114  	// this property results in a 400 bad request error.
  4115  	UseFirstPageHeaderFooter bool `json:"useFirstPageHeaderFooter,omitempty"`
  4116  	// ForceSendFields is a list of field names (e.g. "ColumnProperties") to
  4117  	// unconditionally include in API requests. By default, fields with empty or
  4118  	// default values are omitted from API requests. See
  4119  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4120  	// details.
  4121  	ForceSendFields []string `json:"-"`
  4122  	// NullFields is a list of field names (e.g. "ColumnProperties") to include in
  4123  	// API requests with the JSON null value. By default, fields with empty values
  4124  	// are omitted from API requests. See
  4125  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4126  	NullFields []string `json:"-"`
  4127  }
  4128  
  4129  func (s *SectionStyle) MarshalJSON() ([]byte, error) {
  4130  	type NoMethod SectionStyle
  4131  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4132  }
  4133  
  4134  // Shading: The shading of a paragraph.
  4135  type Shading struct {
  4136  	// BackgroundColor: The background color of this paragraph shading.
  4137  	BackgroundColor *OptionalColor `json:"backgroundColor,omitempty"`
  4138  	// ForceSendFields is a list of field names (e.g. "BackgroundColor") to
  4139  	// unconditionally include in API requests. By default, fields with empty or
  4140  	// default values are omitted from API requests. See
  4141  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4142  	// details.
  4143  	ForceSendFields []string `json:"-"`
  4144  	// NullFields is a list of field names (e.g. "BackgroundColor") to include in
  4145  	// API requests with the JSON null value. By default, fields with empty values
  4146  	// are omitted from API requests. See
  4147  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4148  	NullFields []string `json:"-"`
  4149  }
  4150  
  4151  func (s *Shading) MarshalJSON() ([]byte, error) {
  4152  	type NoMethod Shading
  4153  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4154  }
  4155  
  4156  // ShadingSuggestionState: A mask that indicates which of the fields on the
  4157  // base Shading have been changed in this suggested change. For any field set
  4158  // to true, there's a new suggested value.
  4159  type ShadingSuggestionState struct {
  4160  	// BackgroundColorSuggested: Indicates if there was a suggested change to the
  4161  	// Shading.
  4162  	BackgroundColorSuggested bool `json:"backgroundColorSuggested,omitempty"`
  4163  	// ForceSendFields is a list of field names (e.g. "BackgroundColorSuggested")
  4164  	// to unconditionally include in API requests. By default, fields with empty or
  4165  	// default values are omitted from API requests. See
  4166  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4167  	// details.
  4168  	ForceSendFields []string `json:"-"`
  4169  	// NullFields is a list of field names (e.g. "BackgroundColorSuggested") to
  4170  	// include in API requests with the JSON null value. By default, fields with
  4171  	// empty values are omitted from API requests. See
  4172  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4173  	NullFields []string `json:"-"`
  4174  }
  4175  
  4176  func (s *ShadingSuggestionState) MarshalJSON() ([]byte, error) {
  4177  	type NoMethod ShadingSuggestionState
  4178  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4179  }
  4180  
  4181  // SheetsChartReference: A reference to a linked chart embedded from Google
  4182  // Sheets.
  4183  type SheetsChartReference struct {
  4184  	// ChartId: The ID of the specific chart in the Google Sheets spreadsheet
  4185  	// that's embedded.
  4186  	ChartId int64 `json:"chartId,omitempty"`
  4187  	// SpreadsheetId: The ID of the Google Sheets spreadsheet that contains the
  4188  	// source chart.
  4189  	SpreadsheetId string `json:"spreadsheetId,omitempty"`
  4190  	// ForceSendFields is a list of field names (e.g. "ChartId") to unconditionally
  4191  	// include in API requests. By default, fields with empty or default values are
  4192  	// omitted from API requests. See
  4193  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4194  	// details.
  4195  	ForceSendFields []string `json:"-"`
  4196  	// NullFields is a list of field names (e.g. "ChartId") to include in API
  4197  	// requests with the JSON null value. By default, fields with empty values are
  4198  	// omitted from API requests. See
  4199  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4200  	NullFields []string `json:"-"`
  4201  }
  4202  
  4203  func (s *SheetsChartReference) MarshalJSON() ([]byte, error) {
  4204  	type NoMethod SheetsChartReference
  4205  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4206  }
  4207  
  4208  // SheetsChartReferenceSuggestionState: A mask that indicates which of the
  4209  // fields on the base SheetsChartReference have been changed in this
  4210  // suggestion. For any field set to true, there's a new suggested value.
  4211  type SheetsChartReferenceSuggestionState struct {
  4212  	// ChartIdSuggested: Indicates if there was a suggested change to chart_id.
  4213  	ChartIdSuggested bool `json:"chartIdSuggested,omitempty"`
  4214  	// SpreadsheetIdSuggested: Indicates if there was a suggested change to
  4215  	// spreadsheet_id.
  4216  	SpreadsheetIdSuggested bool `json:"spreadsheetIdSuggested,omitempty"`
  4217  	// ForceSendFields is a list of field names (e.g. "ChartIdSuggested") to
  4218  	// unconditionally include in API requests. By default, fields with empty or
  4219  	// default values are omitted from API requests. See
  4220  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4221  	// details.
  4222  	ForceSendFields []string `json:"-"`
  4223  	// NullFields is a list of field names (e.g. "ChartIdSuggested") to include in
  4224  	// API requests with the JSON null value. By default, fields with empty values
  4225  	// are omitted from API requests. See
  4226  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4227  	NullFields []string `json:"-"`
  4228  }
  4229  
  4230  func (s *SheetsChartReferenceSuggestionState) MarshalJSON() ([]byte, error) {
  4231  	type NoMethod SheetsChartReferenceSuggestionState
  4232  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4233  }
  4234  
  4235  // Size: A width and height.
  4236  type Size struct {
  4237  	// Height: The height of the object.
  4238  	Height *Dimension `json:"height,omitempty"`
  4239  	// Width: The width of the object.
  4240  	Width *Dimension `json:"width,omitempty"`
  4241  	// ForceSendFields is a list of field names (e.g. "Height") to unconditionally
  4242  	// include in API requests. By default, fields with empty or default values are
  4243  	// omitted from API requests. See
  4244  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4245  	// details.
  4246  	ForceSendFields []string `json:"-"`
  4247  	// NullFields is a list of field names (e.g. "Height") to include in API
  4248  	// requests with the JSON null value. By default, fields with empty values are
  4249  	// omitted from API requests. See
  4250  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4251  	NullFields []string `json:"-"`
  4252  }
  4253  
  4254  func (s *Size) MarshalJSON() ([]byte, error) {
  4255  	type NoMethod Size
  4256  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4257  }
  4258  
  4259  // SizeSuggestionState: A mask that indicates which of the fields on the base
  4260  // Size have been changed in this suggestion. For any field set to true, the
  4261  // Size has a new suggested value.
  4262  type SizeSuggestionState struct {
  4263  	// HeightSuggested: Indicates if there was a suggested change to height.
  4264  	HeightSuggested bool `json:"heightSuggested,omitempty"`
  4265  	// WidthSuggested: Indicates if there was a suggested change to width.
  4266  	WidthSuggested bool `json:"widthSuggested,omitempty"`
  4267  	// ForceSendFields is a list of field names (e.g. "HeightSuggested") to
  4268  	// unconditionally include in API requests. By default, fields with empty or
  4269  	// default values are omitted from API requests. See
  4270  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4271  	// details.
  4272  	ForceSendFields []string `json:"-"`
  4273  	// NullFields is a list of field names (e.g. "HeightSuggested") to include in
  4274  	// API requests with the JSON null value. By default, fields with empty values
  4275  	// are omitted from API requests. See
  4276  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4277  	NullFields []string `json:"-"`
  4278  }
  4279  
  4280  func (s *SizeSuggestionState) MarshalJSON() ([]byte, error) {
  4281  	type NoMethod SizeSuggestionState
  4282  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4283  }
  4284  
  4285  // StructuralElement: A StructuralElement describes content that provides
  4286  // structure to the document.
  4287  type StructuralElement struct {
  4288  	// EndIndex: The zero-based end index of this structural element, exclusive, in
  4289  	// UTF-16 code units.
  4290  	EndIndex int64 `json:"endIndex,omitempty"`
  4291  	// Paragraph: A paragraph type of structural element.
  4292  	Paragraph *Paragraph `json:"paragraph,omitempty"`
  4293  	// SectionBreak: A section break type of structural element.
  4294  	SectionBreak *SectionBreak `json:"sectionBreak,omitempty"`
  4295  	// StartIndex: The zero-based start index of this structural element, in UTF-16
  4296  	// code units.
  4297  	StartIndex int64 `json:"startIndex,omitempty"`
  4298  	// Table: A table type of structural element.
  4299  	Table *Table `json:"table,omitempty"`
  4300  	// TableOfContents: A table of contents type of structural element.
  4301  	TableOfContents *TableOfContents `json:"tableOfContents,omitempty"`
  4302  	// ForceSendFields is a list of field names (e.g. "EndIndex") to
  4303  	// unconditionally include in API requests. By default, fields with empty or
  4304  	// default values are omitted from API requests. See
  4305  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4306  	// details.
  4307  	ForceSendFields []string `json:"-"`
  4308  	// NullFields is a list of field names (e.g. "EndIndex") to include in API
  4309  	// requests with the JSON null value. By default, fields with empty values are
  4310  	// omitted from API requests. See
  4311  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4312  	NullFields []string `json:"-"`
  4313  }
  4314  
  4315  func (s *StructuralElement) MarshalJSON() ([]byte, error) {
  4316  	type NoMethod StructuralElement
  4317  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4318  }
  4319  
  4320  // SubstringMatchCriteria: A criteria that matches a specific string of text in
  4321  // the document.
  4322  type SubstringMatchCriteria struct {
  4323  	// MatchCase: Indicates whether the search should respect case: - `True`: the
  4324  	// search is case sensitive. - `False`: the search is case insensitive.
  4325  	MatchCase bool `json:"matchCase,omitempty"`
  4326  	// Text: The text to search for in the document.
  4327  	Text string `json:"text,omitempty"`
  4328  	// ForceSendFields is a list of field names (e.g. "MatchCase") to
  4329  	// unconditionally include in API requests. By default, fields with empty or
  4330  	// default values are omitted from API requests. See
  4331  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4332  	// details.
  4333  	ForceSendFields []string `json:"-"`
  4334  	// NullFields is a list of field names (e.g. "MatchCase") to include in API
  4335  	// requests with the JSON null value. By default, fields with empty values are
  4336  	// omitted from API requests. See
  4337  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4338  	NullFields []string `json:"-"`
  4339  }
  4340  
  4341  func (s *SubstringMatchCriteria) MarshalJSON() ([]byte, error) {
  4342  	type NoMethod SubstringMatchCriteria
  4343  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4344  }
  4345  
  4346  // SuggestedBullet: A suggested change to a Bullet.
  4347  type SuggestedBullet struct {
  4348  	// Bullet: A Bullet that only includes the changes made in this suggestion.
  4349  	// This can be used along with the bullet_suggestion_state to see which fields
  4350  	// have changed and their new values.
  4351  	Bullet *Bullet `json:"bullet,omitempty"`
  4352  	// BulletSuggestionState: A mask that indicates which of the fields on the base
  4353  	// Bullet have been changed in this suggestion.
  4354  	BulletSuggestionState *BulletSuggestionState `json:"bulletSuggestionState,omitempty"`
  4355  	// ForceSendFields is a list of field names (e.g. "Bullet") to unconditionally
  4356  	// include in API requests. By default, fields with empty or default values are
  4357  	// omitted from API requests. See
  4358  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4359  	// details.
  4360  	ForceSendFields []string `json:"-"`
  4361  	// NullFields is a list of field names (e.g. "Bullet") to include in API
  4362  	// requests with the JSON null value. By default, fields with empty values are
  4363  	// omitted from API requests. See
  4364  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4365  	NullFields []string `json:"-"`
  4366  }
  4367  
  4368  func (s *SuggestedBullet) MarshalJSON() ([]byte, error) {
  4369  	type NoMethod SuggestedBullet
  4370  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4371  }
  4372  
  4373  // SuggestedDocumentStyle: A suggested change to the DocumentStyle.
  4374  type SuggestedDocumentStyle struct {
  4375  	// DocumentStyle: A DocumentStyle that only includes the changes made in this
  4376  	// suggestion. This can be used along with the document_style_suggestion_state
  4377  	// to see which fields have changed and their new values.
  4378  	DocumentStyle *DocumentStyle `json:"documentStyle,omitempty"`
  4379  	// DocumentStyleSuggestionState: A mask that indicates which of the fields on
  4380  	// the base DocumentStyle have been changed in this suggestion.
  4381  	DocumentStyleSuggestionState *DocumentStyleSuggestionState `json:"documentStyleSuggestionState,omitempty"`
  4382  	// ForceSendFields is a list of field names (e.g. "DocumentStyle") to
  4383  	// unconditionally include in API requests. By default, fields with empty or
  4384  	// default values are omitted from API requests. See
  4385  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4386  	// details.
  4387  	ForceSendFields []string `json:"-"`
  4388  	// NullFields is a list of field names (e.g. "DocumentStyle") to include in API
  4389  	// requests with the JSON null value. By default, fields with empty values are
  4390  	// omitted from API requests. See
  4391  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4392  	NullFields []string `json:"-"`
  4393  }
  4394  
  4395  func (s *SuggestedDocumentStyle) MarshalJSON() ([]byte, error) {
  4396  	type NoMethod SuggestedDocumentStyle
  4397  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4398  }
  4399  
  4400  // SuggestedInlineObjectProperties: A suggested change to
  4401  // InlineObjectProperties.
  4402  type SuggestedInlineObjectProperties struct {
  4403  	// InlineObjectProperties: An InlineObjectProperties that only includes the
  4404  	// changes made in this suggestion. This can be used along with the
  4405  	// inline_object_properties_suggestion_state to see which fields have changed
  4406  	// and their new values.
  4407  	InlineObjectProperties *InlineObjectProperties `json:"inlineObjectProperties,omitempty"`
  4408  	// InlineObjectPropertiesSuggestionState: A mask that indicates which of the
  4409  	// fields on the base InlineObjectProperties have been changed in this
  4410  	// suggestion.
  4411  	InlineObjectPropertiesSuggestionState *InlineObjectPropertiesSuggestionState `json:"inlineObjectPropertiesSuggestionState,omitempty"`
  4412  	// ForceSendFields is a list of field names (e.g. "InlineObjectProperties") to
  4413  	// unconditionally include in API requests. By default, fields with empty or
  4414  	// default values are omitted from API requests. See
  4415  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4416  	// details.
  4417  	ForceSendFields []string `json:"-"`
  4418  	// NullFields is a list of field names (e.g. "InlineObjectProperties") to
  4419  	// include in API requests with the JSON null value. By default, fields with
  4420  	// empty values are omitted from API requests. See
  4421  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4422  	NullFields []string `json:"-"`
  4423  }
  4424  
  4425  func (s *SuggestedInlineObjectProperties) MarshalJSON() ([]byte, error) {
  4426  	type NoMethod SuggestedInlineObjectProperties
  4427  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4428  }
  4429  
  4430  // SuggestedListProperties: A suggested change to ListProperties.
  4431  type SuggestedListProperties struct {
  4432  	// ListProperties: A ListProperties that only includes the changes made in this
  4433  	// suggestion. This can be used along with the list_properties_suggestion_state
  4434  	// to see which fields have changed and their new values.
  4435  	ListProperties *ListProperties `json:"listProperties,omitempty"`
  4436  	// ListPropertiesSuggestionState: A mask that indicates which of the fields on
  4437  	// the base ListProperties have been changed in this suggestion.
  4438  	ListPropertiesSuggestionState *ListPropertiesSuggestionState `json:"listPropertiesSuggestionState,omitempty"`
  4439  	// ForceSendFields is a list of field names (e.g. "ListProperties") to
  4440  	// unconditionally include in API requests. By default, fields with empty or
  4441  	// default values are omitted from API requests. See
  4442  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4443  	// details.
  4444  	ForceSendFields []string `json:"-"`
  4445  	// NullFields is a list of field names (e.g. "ListProperties") to include in
  4446  	// API requests with the JSON null value. By default, fields with empty values
  4447  	// are omitted from API requests. See
  4448  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4449  	NullFields []string `json:"-"`
  4450  }
  4451  
  4452  func (s *SuggestedListProperties) MarshalJSON() ([]byte, error) {
  4453  	type NoMethod SuggestedListProperties
  4454  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4455  }
  4456  
  4457  // SuggestedNamedStyles: A suggested change to the NamedStyles.
  4458  type SuggestedNamedStyles struct {
  4459  	// NamedStyles: A NamedStyles that only includes the changes made in this
  4460  	// suggestion. This can be used along with the named_styles_suggestion_state to
  4461  	// see which fields have changed and their new values.
  4462  	NamedStyles *NamedStyles `json:"namedStyles,omitempty"`
  4463  	// NamedStylesSuggestionState: A mask that indicates which of the fields on the
  4464  	// base NamedStyles have been changed in this suggestion.
  4465  	NamedStylesSuggestionState *NamedStylesSuggestionState `json:"namedStylesSuggestionState,omitempty"`
  4466  	// ForceSendFields is a list of field names (e.g. "NamedStyles") to
  4467  	// unconditionally include in API requests. By default, fields with empty or
  4468  	// default values are omitted from API requests. See
  4469  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4470  	// details.
  4471  	ForceSendFields []string `json:"-"`
  4472  	// NullFields is a list of field names (e.g. "NamedStyles") to include in API
  4473  	// requests with the JSON null value. By default, fields with empty values are
  4474  	// omitted from API requests. See
  4475  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4476  	NullFields []string `json:"-"`
  4477  }
  4478  
  4479  func (s *SuggestedNamedStyles) MarshalJSON() ([]byte, error) {
  4480  	type NoMethod SuggestedNamedStyles
  4481  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4482  }
  4483  
  4484  // SuggestedParagraphStyle: A suggested change to a ParagraphStyle.
  4485  type SuggestedParagraphStyle struct {
  4486  	// ParagraphStyle: A ParagraphStyle that only includes the changes made in this
  4487  	// suggestion. This can be used along with the paragraph_style_suggestion_state
  4488  	// to see which fields have changed and their new values.
  4489  	ParagraphStyle *ParagraphStyle `json:"paragraphStyle,omitempty"`
  4490  	// ParagraphStyleSuggestionState: A mask that indicates which of the fields on
  4491  	// the base ParagraphStyle have been changed in this suggestion.
  4492  	ParagraphStyleSuggestionState *ParagraphStyleSuggestionState `json:"paragraphStyleSuggestionState,omitempty"`
  4493  	// ForceSendFields is a list of field names (e.g. "ParagraphStyle") to
  4494  	// unconditionally include in API requests. By default, fields with empty or
  4495  	// default values are omitted from API requests. See
  4496  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4497  	// details.
  4498  	ForceSendFields []string `json:"-"`
  4499  	// NullFields is a list of field names (e.g. "ParagraphStyle") to include in
  4500  	// API requests with the JSON null value. By default, fields with empty values
  4501  	// are omitted from API requests. See
  4502  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4503  	NullFields []string `json:"-"`
  4504  }
  4505  
  4506  func (s *SuggestedParagraphStyle) MarshalJSON() ([]byte, error) {
  4507  	type NoMethod SuggestedParagraphStyle
  4508  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4509  }
  4510  
  4511  // SuggestedPositionedObjectProperties: A suggested change to
  4512  // PositionedObjectProperties.
  4513  type SuggestedPositionedObjectProperties struct {
  4514  	// PositionedObjectProperties: A PositionedObjectProperties that only includes
  4515  	// the changes made in this suggestion. This can be used along with the
  4516  	// positioned_object_properties_suggestion_state to see which fields have
  4517  	// changed and their new values.
  4518  	PositionedObjectProperties *PositionedObjectProperties `json:"positionedObjectProperties,omitempty"`
  4519  	// PositionedObjectPropertiesSuggestionState: A mask that indicates which of
  4520  	// the fields on the base PositionedObjectProperties have been changed in this
  4521  	// suggestion.
  4522  	PositionedObjectPropertiesSuggestionState *PositionedObjectPropertiesSuggestionState `json:"positionedObjectPropertiesSuggestionState,omitempty"`
  4523  	// ForceSendFields is a list of field names (e.g. "PositionedObjectProperties")
  4524  	// to unconditionally include in API requests. By default, fields with empty or
  4525  	// default values are omitted from API requests. See
  4526  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4527  	// details.
  4528  	ForceSendFields []string `json:"-"`
  4529  	// NullFields is a list of field names (e.g. "PositionedObjectProperties") to
  4530  	// include in API requests with the JSON null value. By default, fields with
  4531  	// empty values are omitted from API requests. See
  4532  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4533  	NullFields []string `json:"-"`
  4534  }
  4535  
  4536  func (s *SuggestedPositionedObjectProperties) MarshalJSON() ([]byte, error) {
  4537  	type NoMethod SuggestedPositionedObjectProperties
  4538  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4539  }
  4540  
  4541  // SuggestedTableCellStyle: A suggested change to a TableCellStyle.
  4542  type SuggestedTableCellStyle struct {
  4543  	// TableCellStyle: A TableCellStyle that only includes the changes made in this
  4544  	// suggestion. This can be used along with the
  4545  	// table_cell_style_suggestion_state to see which fields have changed and their
  4546  	// new values.
  4547  	TableCellStyle *TableCellStyle `json:"tableCellStyle,omitempty"`
  4548  	// TableCellStyleSuggestionState: A mask that indicates which of the fields on
  4549  	// the base TableCellStyle have been changed in this suggestion.
  4550  	TableCellStyleSuggestionState *TableCellStyleSuggestionState `json:"tableCellStyleSuggestionState,omitempty"`
  4551  	// ForceSendFields is a list of field names (e.g. "TableCellStyle") to
  4552  	// unconditionally include in API requests. By default, fields with empty or
  4553  	// default values are omitted from API requests. See
  4554  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4555  	// details.
  4556  	ForceSendFields []string `json:"-"`
  4557  	// NullFields is a list of field names (e.g. "TableCellStyle") to include in
  4558  	// API requests with the JSON null value. By default, fields with empty values
  4559  	// are omitted from API requests. See
  4560  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4561  	NullFields []string `json:"-"`
  4562  }
  4563  
  4564  func (s *SuggestedTableCellStyle) MarshalJSON() ([]byte, error) {
  4565  	type NoMethod SuggestedTableCellStyle
  4566  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4567  }
  4568  
  4569  // SuggestedTableRowStyle: A suggested change to a TableRowStyle.
  4570  type SuggestedTableRowStyle struct {
  4571  	// TableRowStyle: A TableRowStyle that only includes the changes made in this
  4572  	// suggestion. This can be used along with the table_row_style_suggestion_state
  4573  	// to see which fields have changed and their new values.
  4574  	TableRowStyle *TableRowStyle `json:"tableRowStyle,omitempty"`
  4575  	// TableRowStyleSuggestionState: A mask that indicates which of the fields on
  4576  	// the base TableRowStyle have been changed in this suggestion.
  4577  	TableRowStyleSuggestionState *TableRowStyleSuggestionState `json:"tableRowStyleSuggestionState,omitempty"`
  4578  	// ForceSendFields is a list of field names (e.g. "TableRowStyle") to
  4579  	// unconditionally include in API requests. By default, fields with empty or
  4580  	// default values are omitted from API requests. See
  4581  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4582  	// details.
  4583  	ForceSendFields []string `json:"-"`
  4584  	// NullFields is a list of field names (e.g. "TableRowStyle") to include in API
  4585  	// requests with the JSON null value. By default, fields with empty values are
  4586  	// omitted from API requests. See
  4587  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4588  	NullFields []string `json:"-"`
  4589  }
  4590  
  4591  func (s *SuggestedTableRowStyle) MarshalJSON() ([]byte, error) {
  4592  	type NoMethod SuggestedTableRowStyle
  4593  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4594  }
  4595  
  4596  // SuggestedTextStyle: A suggested change to a TextStyle.
  4597  type SuggestedTextStyle struct {
  4598  	// TextStyle: A TextStyle that only includes the changes made in this
  4599  	// suggestion. This can be used along with the text_style_suggestion_state to
  4600  	// see which fields have changed and their new values.
  4601  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  4602  	// TextStyleSuggestionState: A mask that indicates which of the fields on the
  4603  	// base TextStyle have been changed in this suggestion.
  4604  	TextStyleSuggestionState *TextStyleSuggestionState `json:"textStyleSuggestionState,omitempty"`
  4605  	// ForceSendFields is a list of field names (e.g. "TextStyle") to
  4606  	// unconditionally include in API requests. By default, fields with empty or
  4607  	// default values are omitted from API requests. See
  4608  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4609  	// details.
  4610  	ForceSendFields []string `json:"-"`
  4611  	// NullFields is a list of field names (e.g. "TextStyle") to include in API
  4612  	// requests with the JSON null value. By default, fields with empty values are
  4613  	// omitted from API requests. See
  4614  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4615  	NullFields []string `json:"-"`
  4616  }
  4617  
  4618  func (s *SuggestedTextStyle) MarshalJSON() ([]byte, error) {
  4619  	type NoMethod SuggestedTextStyle
  4620  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4621  }
  4622  
  4623  // TabStop: A tab stop within a paragraph.
  4624  type TabStop struct {
  4625  	// Alignment: The alignment of this tab stop. If unset, the value defaults to
  4626  	// START.
  4627  	//
  4628  	// Possible values:
  4629  	//   "TAB_STOP_ALIGNMENT_UNSPECIFIED" - The tab stop alignment is unspecified.
  4630  	//   "START" - The tab stop is aligned to the start of the line. This is the
  4631  	// default.
  4632  	//   "CENTER" - The tab stop is aligned to the center of the line.
  4633  	//   "END" - The tab stop is aligned to the end of the line.
  4634  	Alignment string `json:"alignment,omitempty"`
  4635  	// Offset: The offset between this tab stop and the start margin.
  4636  	Offset *Dimension `json:"offset,omitempty"`
  4637  	// ForceSendFields is a list of field names (e.g. "Alignment") to
  4638  	// unconditionally include in API requests. By default, fields with empty or
  4639  	// default values are omitted from API requests. See
  4640  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4641  	// details.
  4642  	ForceSendFields []string `json:"-"`
  4643  	// NullFields is a list of field names (e.g. "Alignment") to include in API
  4644  	// requests with the JSON null value. By default, fields with empty values are
  4645  	// omitted from API requests. See
  4646  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4647  	NullFields []string `json:"-"`
  4648  }
  4649  
  4650  func (s *TabStop) MarshalJSON() ([]byte, error) {
  4651  	type NoMethod TabStop
  4652  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4653  }
  4654  
  4655  // Table: A StructuralElement representing a table.
  4656  type Table struct {
  4657  	// Columns: Number of columns in the table. It's possible for a table to be
  4658  	// non-rectangular, so some rows may have a different number of cells.
  4659  	Columns int64 `json:"columns,omitempty"`
  4660  	// Rows: Number of rows in the table.
  4661  	Rows int64 `json:"rows,omitempty"`
  4662  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  4663  	// no suggested deletions of this content.
  4664  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  4665  	// SuggestedInsertionIds: The suggested insertion IDs. A Table may have
  4666  	// multiple insertion IDs if it's a nested suggested change. If empty, then
  4667  	// this is not a suggested insertion.
  4668  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  4669  	// TableRows: The contents and style of each row.
  4670  	TableRows []*TableRow `json:"tableRows,omitempty"`
  4671  	// TableStyle: The style of the table.
  4672  	TableStyle *TableStyle `json:"tableStyle,omitempty"`
  4673  	// ForceSendFields is a list of field names (e.g. "Columns") to unconditionally
  4674  	// include in API requests. By default, fields with empty or default values are
  4675  	// omitted from API requests. See
  4676  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4677  	// details.
  4678  	ForceSendFields []string `json:"-"`
  4679  	// NullFields is a list of field names (e.g. "Columns") to include in API
  4680  	// requests with the JSON null value. By default, fields with empty values are
  4681  	// omitted from API requests. See
  4682  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4683  	NullFields []string `json:"-"`
  4684  }
  4685  
  4686  func (s *Table) MarshalJSON() ([]byte, error) {
  4687  	type NoMethod Table
  4688  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4689  }
  4690  
  4691  // TableCell: The contents and style of a cell in a Table.
  4692  type TableCell struct {
  4693  	// Content: The content of the cell.
  4694  	Content []*StructuralElement `json:"content,omitempty"`
  4695  	// EndIndex: The zero-based end index of this cell, exclusive, in UTF-16 code
  4696  	// units.
  4697  	EndIndex int64 `json:"endIndex,omitempty"`
  4698  	// StartIndex: The zero-based start index of this cell, in UTF-16 code units.
  4699  	StartIndex int64 `json:"startIndex,omitempty"`
  4700  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  4701  	// no suggested deletions of this content.
  4702  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  4703  	// SuggestedInsertionIds: The suggested insertion IDs. A TableCell may have
  4704  	// multiple insertion IDs if it's a nested suggested change. If empty, then
  4705  	// this is not a suggested insertion.
  4706  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  4707  	// SuggestedTableCellStyleChanges: The suggested changes to the table cell
  4708  	// style, keyed by suggestion ID.
  4709  	SuggestedTableCellStyleChanges map[string]SuggestedTableCellStyle `json:"suggestedTableCellStyleChanges,omitempty"`
  4710  	// TableCellStyle: The style of the cell.
  4711  	TableCellStyle *TableCellStyle `json:"tableCellStyle,omitempty"`
  4712  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
  4713  	// include in API requests. By default, fields with empty or default values are
  4714  	// omitted from API requests. See
  4715  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4716  	// details.
  4717  	ForceSendFields []string `json:"-"`
  4718  	// NullFields is a list of field names (e.g. "Content") to include in API
  4719  	// requests with the JSON null value. By default, fields with empty values are
  4720  	// omitted from API requests. See
  4721  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4722  	NullFields []string `json:"-"`
  4723  }
  4724  
  4725  func (s *TableCell) MarshalJSON() ([]byte, error) {
  4726  	type NoMethod TableCell
  4727  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4728  }
  4729  
  4730  // TableCellBorder: A border around a table cell. Table cell borders cannot be
  4731  // transparent. To hide a table cell border, make its width 0.
  4732  type TableCellBorder struct {
  4733  	// Color: The color of the border. This color cannot be transparent.
  4734  	Color *OptionalColor `json:"color,omitempty"`
  4735  	// DashStyle: The dash style of the border.
  4736  	//
  4737  	// Possible values:
  4738  	//   "DASH_STYLE_UNSPECIFIED" - Unspecified dash style.
  4739  	//   "SOLID" - Solid line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  4740  	// 'solid'. This is the default dash style.
  4741  	//   "DOT" - Dotted line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  4742  	// 'dot'.
  4743  	//   "DASH" - Dashed line. Corresponds to ECMA-376 ST_PresetLineDashVal value
  4744  	// 'dash'.
  4745  	DashStyle string `json:"dashStyle,omitempty"`
  4746  	// Width: The width of the border.
  4747  	Width *Dimension `json:"width,omitempty"`
  4748  	// ForceSendFields is a list of field names (e.g. "Color") to unconditionally
  4749  	// include in API requests. By default, fields with empty or default values are
  4750  	// omitted from API requests. See
  4751  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4752  	// details.
  4753  	ForceSendFields []string `json:"-"`
  4754  	// NullFields is a list of field names (e.g. "Color") to include in API
  4755  	// requests with the JSON null value. By default, fields with empty values are
  4756  	// omitted from API requests. See
  4757  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4758  	NullFields []string `json:"-"`
  4759  }
  4760  
  4761  func (s *TableCellBorder) MarshalJSON() ([]byte, error) {
  4762  	type NoMethod TableCellBorder
  4763  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4764  }
  4765  
  4766  // TableCellLocation: Location of a single cell within a table.
  4767  type TableCellLocation struct {
  4768  	// ColumnIndex: The zero-based column index. For example, the second column in
  4769  	// the table has a column index of 1.
  4770  	ColumnIndex int64 `json:"columnIndex,omitempty"`
  4771  	// RowIndex: The zero-based row index. For example, the second row in the table
  4772  	// has a row index of 1.
  4773  	RowIndex int64 `json:"rowIndex,omitempty"`
  4774  	// TableStartLocation: The location where the table starts in the document.
  4775  	TableStartLocation *Location `json:"tableStartLocation,omitempty"`
  4776  	// ForceSendFields is a list of field names (e.g. "ColumnIndex") to
  4777  	// unconditionally include in API requests. By default, fields with empty or
  4778  	// default values are omitted from API requests. See
  4779  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4780  	// details.
  4781  	ForceSendFields []string `json:"-"`
  4782  	// NullFields is a list of field names (e.g. "ColumnIndex") to include in API
  4783  	// requests with the JSON null value. By default, fields with empty values are
  4784  	// omitted from API requests. See
  4785  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4786  	NullFields []string `json:"-"`
  4787  }
  4788  
  4789  func (s *TableCellLocation) MarshalJSON() ([]byte, error) {
  4790  	type NoMethod TableCellLocation
  4791  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4792  }
  4793  
  4794  // TableCellStyle: The style of a TableCell. Inherited table cell styles are
  4795  // represented as unset fields in this message. A table cell style can inherit
  4796  // from the table's style.
  4797  type TableCellStyle struct {
  4798  	// BackgroundColor: The background color of the cell.
  4799  	BackgroundColor *OptionalColor `json:"backgroundColor,omitempty"`
  4800  	// BorderBottom: The bottom border of the cell.
  4801  	BorderBottom *TableCellBorder `json:"borderBottom,omitempty"`
  4802  	// BorderLeft: The left border of the cell.
  4803  	BorderLeft *TableCellBorder `json:"borderLeft,omitempty"`
  4804  	// BorderRight: The right border of the cell.
  4805  	BorderRight *TableCellBorder `json:"borderRight,omitempty"`
  4806  	// BorderTop: The top border of the cell.
  4807  	BorderTop *TableCellBorder `json:"borderTop,omitempty"`
  4808  	// ColumnSpan: The column span of the cell. This property is read-only.
  4809  	ColumnSpan int64 `json:"columnSpan,omitempty"`
  4810  	// ContentAlignment: The alignment of the content in the table cell. The
  4811  	// default alignment matches the alignment for newly created table cells in the
  4812  	// Docs editor.
  4813  	//
  4814  	// Possible values:
  4815  	//   "CONTENT_ALIGNMENT_UNSPECIFIED" - An unspecified content alignment. The
  4816  	// content alignment is inherited from the parent if one exists.
  4817  	//   "CONTENT_ALIGNMENT_UNSUPPORTED" - An unsupported content alignment.
  4818  	//   "TOP" - An alignment that aligns the content to the top of the content
  4819  	// holder. Corresponds to ECMA-376 ST_TextAnchoringType 't'.
  4820  	//   "MIDDLE" - An alignment that aligns the content to the middle of the
  4821  	// content holder. Corresponds to ECMA-376 ST_TextAnchoringType 'ctr'.
  4822  	//   "BOTTOM" - An alignment that aligns the content to the bottom of the
  4823  	// content holder. Corresponds to ECMA-376 ST_TextAnchoringType 'b'.
  4824  	ContentAlignment string `json:"contentAlignment,omitempty"`
  4825  	// PaddingBottom: The bottom padding of the cell.
  4826  	PaddingBottom *Dimension `json:"paddingBottom,omitempty"`
  4827  	// PaddingLeft: The left padding of the cell.
  4828  	PaddingLeft *Dimension `json:"paddingLeft,omitempty"`
  4829  	// PaddingRight: The right padding of the cell.
  4830  	PaddingRight *Dimension `json:"paddingRight,omitempty"`
  4831  	// PaddingTop: The top padding of the cell.
  4832  	PaddingTop *Dimension `json:"paddingTop,omitempty"`
  4833  	// RowSpan: The row span of the cell. This property is read-only.
  4834  	RowSpan int64 `json:"rowSpan,omitempty"`
  4835  	// ForceSendFields is a list of field names (e.g. "BackgroundColor") to
  4836  	// unconditionally include in API requests. By default, fields with empty or
  4837  	// default values are omitted from API requests. See
  4838  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4839  	// details.
  4840  	ForceSendFields []string `json:"-"`
  4841  	// NullFields is a list of field names (e.g. "BackgroundColor") to include in
  4842  	// API requests with the JSON null value. By default, fields with empty values
  4843  	// are omitted from API requests. See
  4844  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4845  	NullFields []string `json:"-"`
  4846  }
  4847  
  4848  func (s *TableCellStyle) MarshalJSON() ([]byte, error) {
  4849  	type NoMethod TableCellStyle
  4850  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4851  }
  4852  
  4853  // TableCellStyleSuggestionState: A mask that indicates which of the fields on
  4854  // the base TableCellStyle have been changed in this suggestion. For any field
  4855  // set to true, there's a new suggested value.
  4856  type TableCellStyleSuggestionState struct {
  4857  	// BackgroundColorSuggested: Indicates if there was a suggested change to
  4858  	// background_color.
  4859  	BackgroundColorSuggested bool `json:"backgroundColorSuggested,omitempty"`
  4860  	// BorderBottomSuggested: Indicates if there was a suggested change to
  4861  	// border_bottom.
  4862  	BorderBottomSuggested bool `json:"borderBottomSuggested,omitempty"`
  4863  	// BorderLeftSuggested: Indicates if there was a suggested change to
  4864  	// border_left.
  4865  	BorderLeftSuggested bool `json:"borderLeftSuggested,omitempty"`
  4866  	// BorderRightSuggested: Indicates if there was a suggested change to
  4867  	// border_right.
  4868  	BorderRightSuggested bool `json:"borderRightSuggested,omitempty"`
  4869  	// BorderTopSuggested: Indicates if there was a suggested change to border_top.
  4870  	BorderTopSuggested bool `json:"borderTopSuggested,omitempty"`
  4871  	// ColumnSpanSuggested: Indicates if there was a suggested change to
  4872  	// column_span.
  4873  	ColumnSpanSuggested bool `json:"columnSpanSuggested,omitempty"`
  4874  	// ContentAlignmentSuggested: Indicates if there was a suggested change to
  4875  	// content_alignment.
  4876  	ContentAlignmentSuggested bool `json:"contentAlignmentSuggested,omitempty"`
  4877  	// PaddingBottomSuggested: Indicates if there was a suggested change to
  4878  	// padding_bottom.
  4879  	PaddingBottomSuggested bool `json:"paddingBottomSuggested,omitempty"`
  4880  	// PaddingLeftSuggested: Indicates if there was a suggested change to
  4881  	// padding_left.
  4882  	PaddingLeftSuggested bool `json:"paddingLeftSuggested,omitempty"`
  4883  	// PaddingRightSuggested: Indicates if there was a suggested change to
  4884  	// padding_right.
  4885  	PaddingRightSuggested bool `json:"paddingRightSuggested,omitempty"`
  4886  	// PaddingTopSuggested: Indicates if there was a suggested change to
  4887  	// padding_top.
  4888  	PaddingTopSuggested bool `json:"paddingTopSuggested,omitempty"`
  4889  	// RowSpanSuggested: Indicates if there was a suggested change to row_span.
  4890  	RowSpanSuggested bool `json:"rowSpanSuggested,omitempty"`
  4891  	// ForceSendFields is a list of field names (e.g. "BackgroundColorSuggested")
  4892  	// to unconditionally include in API requests. By default, fields with empty or
  4893  	// default values are omitted from API requests. See
  4894  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4895  	// details.
  4896  	ForceSendFields []string `json:"-"`
  4897  	// NullFields is a list of field names (e.g. "BackgroundColorSuggested") to
  4898  	// include in API requests with the JSON null value. By default, fields with
  4899  	// empty values are omitted from API requests. See
  4900  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4901  	NullFields []string `json:"-"`
  4902  }
  4903  
  4904  func (s *TableCellStyleSuggestionState) MarshalJSON() ([]byte, error) {
  4905  	type NoMethod TableCellStyleSuggestionState
  4906  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4907  }
  4908  
  4909  // TableColumnProperties: The properties of a column in a table.
  4910  type TableColumnProperties struct {
  4911  	// Width: The width of the column. Set when the column's `width_type` is
  4912  	// FIXED_WIDTH.
  4913  	Width *Dimension `json:"width,omitempty"`
  4914  	// WidthType: The width type of the column.
  4915  	//
  4916  	// Possible values:
  4917  	//   "WIDTH_TYPE_UNSPECIFIED" - The column width type is unspecified.
  4918  	//   "EVENLY_DISTRIBUTED" - The column width is evenly distributed among the
  4919  	// other evenly distributed columns. The width of the column is automatically
  4920  	// determined and will have an equal portion of the width remaining for the
  4921  	// table after accounting for all columns with specified widths.
  4922  	//   "FIXED_WIDTH" - A fixed column width. The width property contains the
  4923  	// column's width.
  4924  	WidthType string `json:"widthType,omitempty"`
  4925  	// ForceSendFields is a list of field names (e.g. "Width") to unconditionally
  4926  	// include in API requests. By default, fields with empty or default values are
  4927  	// omitted from API requests. See
  4928  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4929  	// details.
  4930  	ForceSendFields []string `json:"-"`
  4931  	// NullFields is a list of field names (e.g. "Width") to include in API
  4932  	// requests with the JSON null value. By default, fields with empty values are
  4933  	// omitted from API requests. See
  4934  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4935  	NullFields []string `json:"-"`
  4936  }
  4937  
  4938  func (s *TableColumnProperties) MarshalJSON() ([]byte, error) {
  4939  	type NoMethod TableColumnProperties
  4940  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4941  }
  4942  
  4943  // TableOfContents: A StructuralElement representing a table of contents.
  4944  type TableOfContents struct {
  4945  	// Content: The content of the table of contents.
  4946  	Content []*StructuralElement `json:"content,omitempty"`
  4947  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  4948  	// no suggested deletions of this content.
  4949  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  4950  	// SuggestedInsertionIds: The suggested insertion IDs. A TableOfContents may
  4951  	// have multiple insertion IDs if it is a nested suggested change. If empty,
  4952  	// then this is not a suggested insertion.
  4953  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  4954  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
  4955  	// include in API requests. By default, fields with empty or default values are
  4956  	// omitted from API requests. See
  4957  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4958  	// details.
  4959  	ForceSendFields []string `json:"-"`
  4960  	// NullFields is a list of field names (e.g. "Content") to include in API
  4961  	// requests with the JSON null value. By default, fields with empty values are
  4962  	// omitted from API requests. See
  4963  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4964  	NullFields []string `json:"-"`
  4965  }
  4966  
  4967  func (s *TableOfContents) MarshalJSON() ([]byte, error) {
  4968  	type NoMethod TableOfContents
  4969  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  4970  }
  4971  
  4972  // TableRange: A table range represents a reference to a subset of a table.
  4973  // It's important to note that the cells specified by a table range do not
  4974  // necessarily form a rectangle. For example, let's say we have a 3 x 3 table
  4975  // where all the cells of the last row are merged together. The table looks
  4976  // like this: [ ] A table range with table cell location =
  4977  // (table_start_location, row = 0, column = 0), row span = 3 and column span =
  4978  // 2 specifies the following cells: x x [ x x x ]
  4979  type TableRange struct {
  4980  	// ColumnSpan: The column span of the table range.
  4981  	ColumnSpan int64 `json:"columnSpan,omitempty"`
  4982  	// RowSpan: The row span of the table range.
  4983  	RowSpan int64 `json:"rowSpan,omitempty"`
  4984  	// TableCellLocation: The cell location where the table range starts.
  4985  	TableCellLocation *TableCellLocation `json:"tableCellLocation,omitempty"`
  4986  	// ForceSendFields is a list of field names (e.g. "ColumnSpan") to
  4987  	// unconditionally include in API requests. By default, fields with empty or
  4988  	// default values are omitted from API requests. See
  4989  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  4990  	// details.
  4991  	ForceSendFields []string `json:"-"`
  4992  	// NullFields is a list of field names (e.g. "ColumnSpan") to include in API
  4993  	// requests with the JSON null value. By default, fields with empty values are
  4994  	// omitted from API requests. See
  4995  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  4996  	NullFields []string `json:"-"`
  4997  }
  4998  
  4999  func (s *TableRange) MarshalJSON() ([]byte, error) {
  5000  	type NoMethod TableRange
  5001  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5002  }
  5003  
  5004  // TableRow: The contents and style of a row in a Table.
  5005  type TableRow struct {
  5006  	// EndIndex: The zero-based end index of this row, exclusive, in UTF-16 code
  5007  	// units.
  5008  	EndIndex int64 `json:"endIndex,omitempty"`
  5009  	// StartIndex: The zero-based start index of this row, in UTF-16 code units.
  5010  	StartIndex int64 `json:"startIndex,omitempty"`
  5011  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  5012  	// no suggested deletions of this content.
  5013  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  5014  	// SuggestedInsertionIds: The suggested insertion IDs. A TableRow may have
  5015  	// multiple insertion IDs if it's a nested suggested change. If empty, then
  5016  	// this is not a suggested insertion.
  5017  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  5018  	// SuggestedTableRowStyleChanges: The suggested style changes to this row,
  5019  	// keyed by suggestion ID.
  5020  	SuggestedTableRowStyleChanges map[string]SuggestedTableRowStyle `json:"suggestedTableRowStyleChanges,omitempty"`
  5021  	// TableCells: The contents and style of each cell in this row. It's possible
  5022  	// for a table to be non-rectangular, so some rows may have a different number
  5023  	// of cells than other rows in the same table.
  5024  	TableCells []*TableCell `json:"tableCells,omitempty"`
  5025  	// TableRowStyle: The style of the table row.
  5026  	TableRowStyle *TableRowStyle `json:"tableRowStyle,omitempty"`
  5027  	// ForceSendFields is a list of field names (e.g. "EndIndex") to
  5028  	// unconditionally include in API requests. By default, fields with empty or
  5029  	// default values are omitted from API requests. See
  5030  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5031  	// details.
  5032  	ForceSendFields []string `json:"-"`
  5033  	// NullFields is a list of field names (e.g. "EndIndex") to include in API
  5034  	// requests with the JSON null value. By default, fields with empty values are
  5035  	// omitted from API requests. See
  5036  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5037  	NullFields []string `json:"-"`
  5038  }
  5039  
  5040  func (s *TableRow) MarshalJSON() ([]byte, error) {
  5041  	type NoMethod TableRow
  5042  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5043  }
  5044  
  5045  // TableRowStyle: Styles that apply to a table row.
  5046  type TableRowStyle struct {
  5047  	// MinRowHeight: The minimum height of the row. The row will be rendered in the
  5048  	// Docs editor at a height equal to or greater than this value in order to show
  5049  	// all the content in the row's cells.
  5050  	MinRowHeight *Dimension `json:"minRowHeight,omitempty"`
  5051  	// PreventOverflow: Whether the row cannot overflow across page or column
  5052  	// boundaries.
  5053  	PreventOverflow bool `json:"preventOverflow,omitempty"`
  5054  	// TableHeader: Whether the row is a table header.
  5055  	TableHeader bool `json:"tableHeader,omitempty"`
  5056  	// ForceSendFields is a list of field names (e.g. "MinRowHeight") to
  5057  	// unconditionally include in API requests. By default, fields with empty or
  5058  	// default values are omitted from API requests. See
  5059  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5060  	// details.
  5061  	ForceSendFields []string `json:"-"`
  5062  	// NullFields is a list of field names (e.g. "MinRowHeight") to include in API
  5063  	// requests with the JSON null value. By default, fields with empty values are
  5064  	// omitted from API requests. See
  5065  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5066  	NullFields []string `json:"-"`
  5067  }
  5068  
  5069  func (s *TableRowStyle) MarshalJSON() ([]byte, error) {
  5070  	type NoMethod TableRowStyle
  5071  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5072  }
  5073  
  5074  // TableRowStyleSuggestionState: A mask that indicates which of the fields on
  5075  // the base TableRowStyle have been changed in this suggestion. For any field
  5076  // set to true, there's a new suggested value.
  5077  type TableRowStyleSuggestionState struct {
  5078  	// MinRowHeightSuggested: Indicates if there was a suggested change to
  5079  	// min_row_height.
  5080  	MinRowHeightSuggested bool `json:"minRowHeightSuggested,omitempty"`
  5081  	// ForceSendFields is a list of field names (e.g. "MinRowHeightSuggested") to
  5082  	// unconditionally include in API requests. By default, fields with empty or
  5083  	// default values are omitted from API requests. See
  5084  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5085  	// details.
  5086  	ForceSendFields []string `json:"-"`
  5087  	// NullFields is a list of field names (e.g. "MinRowHeightSuggested") to
  5088  	// include in API requests with the JSON null value. By default, fields with
  5089  	// empty values are omitted from API requests. See
  5090  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5091  	NullFields []string `json:"-"`
  5092  }
  5093  
  5094  func (s *TableRowStyleSuggestionState) MarshalJSON() ([]byte, error) {
  5095  	type NoMethod TableRowStyleSuggestionState
  5096  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5097  }
  5098  
  5099  // TableStyle: Styles that apply to a table.
  5100  type TableStyle struct {
  5101  	// TableColumnProperties: The properties of each column. Note that in Docs,
  5102  	// tables contain rows and rows contain cells, similar to HTML. So the
  5103  	// properties for a row can be found on the row's table_row_style.
  5104  	TableColumnProperties []*TableColumnProperties `json:"tableColumnProperties,omitempty"`
  5105  	// ForceSendFields is a list of field names (e.g. "TableColumnProperties") to
  5106  	// unconditionally include in API requests. By default, fields with empty or
  5107  	// default values are omitted from API requests. See
  5108  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5109  	// details.
  5110  	ForceSendFields []string `json:"-"`
  5111  	// NullFields is a list of field names (e.g. "TableColumnProperties") to
  5112  	// include in API requests with the JSON null value. By default, fields with
  5113  	// empty values are omitted from API requests. See
  5114  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5115  	NullFields []string `json:"-"`
  5116  }
  5117  
  5118  func (s *TableStyle) MarshalJSON() ([]byte, error) {
  5119  	type NoMethod TableStyle
  5120  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5121  }
  5122  
  5123  // TextRun: A ParagraphElement that represents a run of text that all has the
  5124  // same styling.
  5125  type TextRun struct {
  5126  	// Content: The text of this run. Any non-text elements in the run are replaced
  5127  	// with the Unicode character U+E907.
  5128  	Content string `json:"content,omitempty"`
  5129  	// SuggestedDeletionIds: The suggested deletion IDs. If empty, then there are
  5130  	// no suggested deletions of this content.
  5131  	SuggestedDeletionIds []string `json:"suggestedDeletionIds,omitempty"`
  5132  	// SuggestedInsertionIds: The suggested insertion IDs. A TextRun may have
  5133  	// multiple insertion IDs if it's a nested suggested change. If empty, then
  5134  	// this is not a suggested insertion.
  5135  	SuggestedInsertionIds []string `json:"suggestedInsertionIds,omitempty"`
  5136  	// SuggestedTextStyleChanges: The suggested text style changes to this run,
  5137  	// keyed by suggestion ID.
  5138  	SuggestedTextStyleChanges map[string]SuggestedTextStyle `json:"suggestedTextStyleChanges,omitempty"`
  5139  	// TextStyle: The text style of this run.
  5140  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  5141  	// ForceSendFields is a list of field names (e.g. "Content") to unconditionally
  5142  	// include in API requests. By default, fields with empty or default values are
  5143  	// omitted from API requests. See
  5144  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5145  	// details.
  5146  	ForceSendFields []string `json:"-"`
  5147  	// NullFields is a list of field names (e.g. "Content") to include in API
  5148  	// requests with the JSON null value. By default, fields with empty values are
  5149  	// omitted from API requests. See
  5150  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5151  	NullFields []string `json:"-"`
  5152  }
  5153  
  5154  func (s *TextRun) MarshalJSON() ([]byte, error) {
  5155  	type NoMethod TextRun
  5156  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5157  }
  5158  
  5159  // TextStyle: Represents the styling that can be applied to text. Inherited
  5160  // text styles are represented as unset fields in this message. A text style's
  5161  // parent depends on where the text style is defined: * The TextStyle of text
  5162  // in a Paragraph inherits from the paragraph's corresponding named style type.
  5163  // * The TextStyle on a named style inherits from the normal text named style.
  5164  // * The TextStyle of the normal text named style inherits from the default
  5165  // text style in the Docs editor. * The TextStyle on a Paragraph element that's
  5166  // contained in a table may inherit its text style from the table style. If the
  5167  // text style does not inherit from a parent, unsetting fields will revert the
  5168  // style to a value matching the defaults in the Docs editor.
  5169  type TextStyle struct {
  5170  	// BackgroundColor: The background color of the text. If set, the color is
  5171  	// either an RGB color or transparent, depending on the `color` field.
  5172  	BackgroundColor *OptionalColor `json:"backgroundColor,omitempty"`
  5173  	// BaselineOffset: The text's vertical offset from its normal position. Text
  5174  	// with `SUPERSCRIPT` or `SUBSCRIPT` baseline offsets is automatically rendered
  5175  	// in a smaller font size, computed based on the `font_size` field. Changes in
  5176  	// this field don't affect the `font_size`.
  5177  	//
  5178  	// Possible values:
  5179  	//   "BASELINE_OFFSET_UNSPECIFIED" - The text's baseline offset is inherited
  5180  	// from the parent.
  5181  	//   "NONE" - The text is not vertically offset.
  5182  	//   "SUPERSCRIPT" - The text is vertically offset upwards (superscript).
  5183  	//   "SUBSCRIPT" - The text is vertically offset downwards (subscript).
  5184  	BaselineOffset string `json:"baselineOffset,omitempty"`
  5185  	// Bold: Whether or not the text is rendered as bold.
  5186  	Bold bool `json:"bold,omitempty"`
  5187  	// FontSize: The size of the text's font.
  5188  	FontSize *Dimension `json:"fontSize,omitempty"`
  5189  	// ForegroundColor: The foreground color of the text. If set, the color is
  5190  	// either an RGB color or transparent, depending on the `color` field.
  5191  	ForegroundColor *OptionalColor `json:"foregroundColor,omitempty"`
  5192  	// Italic: Whether or not the text is italicized.
  5193  	Italic bool `json:"italic,omitempty"`
  5194  	// Link: The hyperlink destination of the text. If unset, there's no link.
  5195  	// Links are not inherited from parent text. Changing the link in an update
  5196  	// request causes some other changes to the text style of the range: * When
  5197  	// setting a link, the text foreground color will be updated to the default
  5198  	// link color and the text will be underlined. If these fields are modified in
  5199  	// the same request, those values will be used instead of the link defaults. *
  5200  	// Setting a link on a text range that overlaps with an existing link will also
  5201  	// update the existing link to point to the new URL. * Links are not settable
  5202  	// on newline characters. As a result, setting a link on a text range that
  5203  	// crosses a paragraph boundary, such as "ABC\n123", will separate the
  5204  	// newline character(s) into their own text runs. The link will be applied
  5205  	// separately to the runs before and after the newline. * Removing a link will
  5206  	// update the text style of the range to match the style of the preceding text
  5207  	// (or the default text styles if the preceding text is another link) unless
  5208  	// different styles are being set in the same request.
  5209  	Link *Link `json:"link,omitempty"`
  5210  	// SmallCaps: Whether or not the text is in small capital letters.
  5211  	SmallCaps bool `json:"smallCaps,omitempty"`
  5212  	// Strikethrough: Whether or not the text is struck through.
  5213  	Strikethrough bool `json:"strikethrough,omitempty"`
  5214  	// Underline: Whether or not the text is underlined.
  5215  	Underline bool `json:"underline,omitempty"`
  5216  	// WeightedFontFamily: The font family and rendered weight of the text. If an
  5217  	// update request specifies values for both `weighted_font_family` and `bold`,
  5218  	// the `weighted_font_family` is applied first, then `bold`. If
  5219  	// `weighted_font_family#weight` is not set, it defaults to `400`. If
  5220  	// `weighted_font_family` is set, then `weighted_font_family#font_family` must
  5221  	// also be set with a non-empty value. Otherwise, a 400 bad request error is
  5222  	// returned.
  5223  	WeightedFontFamily *WeightedFontFamily `json:"weightedFontFamily,omitempty"`
  5224  	// ForceSendFields is a list of field names (e.g. "BackgroundColor") to
  5225  	// unconditionally include in API requests. By default, fields with empty or
  5226  	// default values are omitted from API requests. See
  5227  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5228  	// details.
  5229  	ForceSendFields []string `json:"-"`
  5230  	// NullFields is a list of field names (e.g. "BackgroundColor") to include in
  5231  	// API requests with the JSON null value. By default, fields with empty values
  5232  	// are omitted from API requests. See
  5233  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5234  	NullFields []string `json:"-"`
  5235  }
  5236  
  5237  func (s *TextStyle) MarshalJSON() ([]byte, error) {
  5238  	type NoMethod TextStyle
  5239  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5240  }
  5241  
  5242  // TextStyleSuggestionState: A mask that indicates which of the fields on the
  5243  // base TextStyle have been changed in this suggestion. For any field set to
  5244  // true, there's a new suggested value.
  5245  type TextStyleSuggestionState struct {
  5246  	// BackgroundColorSuggested: Indicates if there was a suggested change to
  5247  	// background_color.
  5248  	BackgroundColorSuggested bool `json:"backgroundColorSuggested,omitempty"`
  5249  	// BaselineOffsetSuggested: Indicates if there was a suggested change to
  5250  	// baseline_offset.
  5251  	BaselineOffsetSuggested bool `json:"baselineOffsetSuggested,omitempty"`
  5252  	// BoldSuggested: Indicates if there was a suggested change to bold.
  5253  	BoldSuggested bool `json:"boldSuggested,omitempty"`
  5254  	// FontSizeSuggested: Indicates if there was a suggested change to font_size.
  5255  	FontSizeSuggested bool `json:"fontSizeSuggested,omitempty"`
  5256  	// ForegroundColorSuggested: Indicates if there was a suggested change to
  5257  	// foreground_color.
  5258  	ForegroundColorSuggested bool `json:"foregroundColorSuggested,omitempty"`
  5259  	// ItalicSuggested: Indicates if there was a suggested change to italic.
  5260  	ItalicSuggested bool `json:"italicSuggested,omitempty"`
  5261  	// LinkSuggested: Indicates if there was a suggested change to link.
  5262  	LinkSuggested bool `json:"linkSuggested,omitempty"`
  5263  	// SmallCapsSuggested: Indicates if there was a suggested change to small_caps.
  5264  	SmallCapsSuggested bool `json:"smallCapsSuggested,omitempty"`
  5265  	// StrikethroughSuggested: Indicates if there was a suggested change to
  5266  	// strikethrough.
  5267  	StrikethroughSuggested bool `json:"strikethroughSuggested,omitempty"`
  5268  	// UnderlineSuggested: Indicates if there was a suggested change to underline.
  5269  	UnderlineSuggested bool `json:"underlineSuggested,omitempty"`
  5270  	// WeightedFontFamilySuggested: Indicates if there was a suggested change to
  5271  	// weighted_font_family.
  5272  	WeightedFontFamilySuggested bool `json:"weightedFontFamilySuggested,omitempty"`
  5273  	// ForceSendFields is a list of field names (e.g. "BackgroundColorSuggested")
  5274  	// to unconditionally include in API requests. By default, fields with empty or
  5275  	// default values are omitted from API requests. See
  5276  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5277  	// details.
  5278  	ForceSendFields []string `json:"-"`
  5279  	// NullFields is a list of field names (e.g. "BackgroundColorSuggested") to
  5280  	// include in API requests with the JSON null value. By default, fields with
  5281  	// empty values are omitted from API requests. See
  5282  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5283  	NullFields []string `json:"-"`
  5284  }
  5285  
  5286  func (s *TextStyleSuggestionState) MarshalJSON() ([]byte, error) {
  5287  	type NoMethod TextStyleSuggestionState
  5288  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5289  }
  5290  
  5291  // UnmergeTableCellsRequest: Unmerges cells in a Table.
  5292  type UnmergeTableCellsRequest struct {
  5293  	// TableRange: The table range specifying which cells of the table to unmerge.
  5294  	// All merged cells in this range will be unmerged, and cells that are already
  5295  	// unmerged will not be affected. If the range has no merged cells, the request
  5296  	// will do nothing. If there is text in any of the merged cells, the text will
  5297  	// remain in the "head" cell of the resulting block of unmerged cells. The
  5298  	// "head" cell is the upper-left cell when the content direction is from left
  5299  	// to right, and the upper-right otherwise.
  5300  	TableRange *TableRange `json:"tableRange,omitempty"`
  5301  	// ForceSendFields is a list of field names (e.g. "TableRange") to
  5302  	// unconditionally include in API requests. By default, fields with empty or
  5303  	// default values are omitted from API requests. See
  5304  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5305  	// details.
  5306  	ForceSendFields []string `json:"-"`
  5307  	// NullFields is a list of field names (e.g. "TableRange") to include in API
  5308  	// requests with the JSON null value. By default, fields with empty values are
  5309  	// omitted from API requests. See
  5310  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5311  	NullFields []string `json:"-"`
  5312  }
  5313  
  5314  func (s *UnmergeTableCellsRequest) MarshalJSON() ([]byte, error) {
  5315  	type NoMethod UnmergeTableCellsRequest
  5316  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5317  }
  5318  
  5319  // UpdateDocumentStyleRequest: Updates the DocumentStyle.
  5320  type UpdateDocumentStyleRequest struct {
  5321  	// DocumentStyle: The styles to set on the document. Certain document style
  5322  	// changes may cause other changes in order to mirror the behavior of the Docs
  5323  	// editor. See the documentation of DocumentStyle for more information.
  5324  	DocumentStyle *DocumentStyle `json:"documentStyle,omitempty"`
  5325  	// Fields: The fields that should be updated. At least one field must be
  5326  	// specified. The root `document_style` is implied and should not be specified.
  5327  	// A single "*" can be used as short-hand for listing every field. For
  5328  	// example to update the background, set `fields` to "background".
  5329  	Fields string `json:"fields,omitempty"`
  5330  	// ForceSendFields is a list of field names (e.g. "DocumentStyle") to
  5331  	// unconditionally include in API requests. By default, fields with empty or
  5332  	// default values are omitted from API requests. See
  5333  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5334  	// details.
  5335  	ForceSendFields []string `json:"-"`
  5336  	// NullFields is a list of field names (e.g. "DocumentStyle") to include in API
  5337  	// requests with the JSON null value. By default, fields with empty values are
  5338  	// omitted from API requests. See
  5339  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5340  	NullFields []string `json:"-"`
  5341  }
  5342  
  5343  func (s *UpdateDocumentStyleRequest) MarshalJSON() ([]byte, error) {
  5344  	type NoMethod UpdateDocumentStyleRequest
  5345  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5346  }
  5347  
  5348  // UpdateParagraphStyleRequest: Update the styling of all paragraphs that
  5349  // overlap with the given range.
  5350  type UpdateParagraphStyleRequest struct {
  5351  	// Fields: The fields that should be updated. At least one field must be
  5352  	// specified. The root `paragraph_style` is implied and should not be
  5353  	// specified. A single "*" can be used as short-hand for listing every field.
  5354  	// For example, to update the paragraph style's alignment property, set
  5355  	// `fields` to "alignment". To reset a property to its default value, include
  5356  	// its field name in the field mask but leave the field itself unset.
  5357  	Fields string `json:"fields,omitempty"`
  5358  	// ParagraphStyle: The styles to set on the paragraphs. Certain paragraph style
  5359  	// changes may cause other changes in order to mirror the behavior of the Docs
  5360  	// editor. See the documentation of ParagraphStyle for more information.
  5361  	ParagraphStyle *ParagraphStyle `json:"paragraphStyle,omitempty"`
  5362  	// Range: The range overlapping the paragraphs to style.
  5363  	Range *Range `json:"range,omitempty"`
  5364  	// ForceSendFields is a list of field names (e.g. "Fields") to unconditionally
  5365  	// include in API requests. By default, fields with empty or default values are
  5366  	// omitted from API requests. See
  5367  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5368  	// details.
  5369  	ForceSendFields []string `json:"-"`
  5370  	// NullFields is a list of field names (e.g. "Fields") to include in API
  5371  	// requests with the JSON null value. By default, fields with empty values are
  5372  	// omitted from API requests. See
  5373  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5374  	NullFields []string `json:"-"`
  5375  }
  5376  
  5377  func (s *UpdateParagraphStyleRequest) MarshalJSON() ([]byte, error) {
  5378  	type NoMethod UpdateParagraphStyleRequest
  5379  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5380  }
  5381  
  5382  // UpdateSectionStyleRequest: Updates the SectionStyle.
  5383  type UpdateSectionStyleRequest struct {
  5384  	// Fields: The fields that should be updated. At least one field must be
  5385  	// specified. The root `section_style` is implied and must not be specified. A
  5386  	// single "*" can be used as short-hand for listing every field. For example
  5387  	// to update the left margin, set `fields` to "margin_left".
  5388  	Fields string `json:"fields,omitempty"`
  5389  	// Range: The range overlapping the sections to style. Because section breaks
  5390  	// can only be inserted inside the body, the segment ID field must be empty.
  5391  	Range *Range `json:"range,omitempty"`
  5392  	// SectionStyle: The styles to be set on the section. Certain section style
  5393  	// changes may cause other changes in order to mirror the behavior of the Docs
  5394  	// editor. See the documentation of SectionStyle for more information.
  5395  	SectionStyle *SectionStyle `json:"sectionStyle,omitempty"`
  5396  	// ForceSendFields is a list of field names (e.g. "Fields") to unconditionally
  5397  	// include in API requests. By default, fields with empty or default values are
  5398  	// omitted from API requests. See
  5399  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5400  	// details.
  5401  	ForceSendFields []string `json:"-"`
  5402  	// NullFields is a list of field names (e.g. "Fields") to include in API
  5403  	// requests with the JSON null value. By default, fields with empty values are
  5404  	// omitted from API requests. See
  5405  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5406  	NullFields []string `json:"-"`
  5407  }
  5408  
  5409  func (s *UpdateSectionStyleRequest) MarshalJSON() ([]byte, error) {
  5410  	type NoMethod UpdateSectionStyleRequest
  5411  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5412  }
  5413  
  5414  // UpdateTableCellStyleRequest: Updates the style of a range of table cells.
  5415  type UpdateTableCellStyleRequest struct {
  5416  	// Fields: The fields that should be updated. At least one field must be
  5417  	// specified. The root `tableCellStyle` is implied and should not be specified.
  5418  	// A single "*" can be used as short-hand for listing every field. For
  5419  	// example to update the table cell background color, set `fields` to
  5420  	// "backgroundColor". To reset a property to its default value, include its
  5421  	// field name in the field mask but leave the field itself unset.
  5422  	Fields string `json:"fields,omitempty"`
  5423  	// TableCellStyle: The style to set on the table cells. When updating borders,
  5424  	// if a cell shares a border with an adjacent cell, the corresponding border
  5425  	// property of the adjacent cell is updated as well. Borders that are merged
  5426  	// and invisible are not updated. Since updating a border shared by adjacent
  5427  	// cells in the same request can cause conflicting border updates, border
  5428  	// updates are applied in the following order: - `border_right` - `border_left`
  5429  	// - `border_bottom` - `border_top`
  5430  	TableCellStyle *TableCellStyle `json:"tableCellStyle,omitempty"`
  5431  	// TableRange: The table range representing the subset of the table to which
  5432  	// the updates are applied.
  5433  	TableRange *TableRange `json:"tableRange,omitempty"`
  5434  	// TableStartLocation: The location where the table starts in the document.
  5435  	// When specified, the updates are applied to all the cells in the table.
  5436  	TableStartLocation *Location `json:"tableStartLocation,omitempty"`
  5437  	// ForceSendFields is a list of field names (e.g. "Fields") to unconditionally
  5438  	// include in API requests. By default, fields with empty or default values are
  5439  	// omitted from API requests. See
  5440  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5441  	// details.
  5442  	ForceSendFields []string `json:"-"`
  5443  	// NullFields is a list of field names (e.g. "Fields") to include in API
  5444  	// requests with the JSON null value. By default, fields with empty values are
  5445  	// omitted from API requests. See
  5446  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5447  	NullFields []string `json:"-"`
  5448  }
  5449  
  5450  func (s *UpdateTableCellStyleRequest) MarshalJSON() ([]byte, error) {
  5451  	type NoMethod UpdateTableCellStyleRequest
  5452  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5453  }
  5454  
  5455  // UpdateTableColumnPropertiesRequest: Updates the TableColumnProperties of
  5456  // columns in a table.
  5457  type UpdateTableColumnPropertiesRequest struct {
  5458  	// ColumnIndices: The list of zero-based column indices whose property should
  5459  	// be updated. If no indices are specified, all columns will be updated.
  5460  	ColumnIndices []int64 `json:"columnIndices,omitempty"`
  5461  	// Fields: The fields that should be updated. At least one field must be
  5462  	// specified. The root `tableColumnProperties` is implied and should not be
  5463  	// specified. A single "*" can be used as short-hand for listing every field.
  5464  	// For example to update the column width, set `fields` to "width".
  5465  	Fields string `json:"fields,omitempty"`
  5466  	// TableColumnProperties: The table column properties to update. If the value
  5467  	// of `table_column_properties#width` is less than 5 points (5/72 inch), a 400
  5468  	// bad request error is returned.
  5469  	TableColumnProperties *TableColumnProperties `json:"tableColumnProperties,omitempty"`
  5470  	// TableStartLocation: The location where the table starts in the document.
  5471  	TableStartLocation *Location `json:"tableStartLocation,omitempty"`
  5472  	// ForceSendFields is a list of field names (e.g. "ColumnIndices") to
  5473  	// unconditionally include in API requests. By default, fields with empty or
  5474  	// default values are omitted from API requests. See
  5475  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5476  	// details.
  5477  	ForceSendFields []string `json:"-"`
  5478  	// NullFields is a list of field names (e.g. "ColumnIndices") to include in API
  5479  	// requests with the JSON null value. By default, fields with empty values are
  5480  	// omitted from API requests. See
  5481  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5482  	NullFields []string `json:"-"`
  5483  }
  5484  
  5485  func (s *UpdateTableColumnPropertiesRequest) MarshalJSON() ([]byte, error) {
  5486  	type NoMethod UpdateTableColumnPropertiesRequest
  5487  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5488  }
  5489  
  5490  // UpdateTableRowStyleRequest: Updates the TableRowStyle of rows in a table.
  5491  type UpdateTableRowStyleRequest struct {
  5492  	// Fields: The fields that should be updated. At least one field must be
  5493  	// specified. The root `tableRowStyle` is implied and should not be specified.
  5494  	// A single "*" can be used as short-hand for listing every field. For
  5495  	// example to update the minimum row height, set `fields` to
  5496  	// "min_row_height".
  5497  	Fields string `json:"fields,omitempty"`
  5498  	// RowIndices: The list of zero-based row indices whose style should be
  5499  	// updated. If no indices are specified, all rows will be updated.
  5500  	RowIndices []int64 `json:"rowIndices,omitempty"`
  5501  	// TableRowStyle: The styles to be set on the rows.
  5502  	TableRowStyle *TableRowStyle `json:"tableRowStyle,omitempty"`
  5503  	// TableStartLocation: The location where the table starts in the document.
  5504  	TableStartLocation *Location `json:"tableStartLocation,omitempty"`
  5505  	// ForceSendFields is a list of field names (e.g. "Fields") to unconditionally
  5506  	// include in API requests. By default, fields with empty or default values are
  5507  	// omitted from API requests. See
  5508  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5509  	// details.
  5510  	ForceSendFields []string `json:"-"`
  5511  	// NullFields is a list of field names (e.g. "Fields") to include in API
  5512  	// requests with the JSON null value. By default, fields with empty values are
  5513  	// omitted from API requests. See
  5514  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5515  	NullFields []string `json:"-"`
  5516  }
  5517  
  5518  func (s *UpdateTableRowStyleRequest) MarshalJSON() ([]byte, error) {
  5519  	type NoMethod UpdateTableRowStyleRequest
  5520  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5521  }
  5522  
  5523  // UpdateTextStyleRequest: Update the styling of text.
  5524  type UpdateTextStyleRequest struct {
  5525  	// Fields: The fields that should be updated. At least one field must be
  5526  	// specified. The root `text_style` is implied and should not be specified. A
  5527  	// single "*" can be used as short-hand for listing every field. For example,
  5528  	// to update the text style to bold, set `fields` to "bold". To reset a
  5529  	// property to its default value, include its field name in the field mask but
  5530  	// leave the field itself unset.
  5531  	Fields string `json:"fields,omitempty"`
  5532  	// Range: The range of text to style. The range may be extended to include
  5533  	// adjacent newlines. If the range fully contains a paragraph belonging to a
  5534  	// list, the paragraph's bullet is also updated with the matching text style.
  5535  	// Ranges cannot be inserted inside a relative UpdateTextStyleRequest.
  5536  	Range *Range `json:"range,omitempty"`
  5537  	// TextStyle: The styles to set on the text. If the value for a particular
  5538  	// style matches that of the parent, that style will be set to inherit. Certain
  5539  	// text style changes may cause other changes in order to to mirror the
  5540  	// behavior of the Docs editor. See the documentation of TextStyle for more
  5541  	// information.
  5542  	TextStyle *TextStyle `json:"textStyle,omitempty"`
  5543  	// ForceSendFields is a list of field names (e.g. "Fields") to unconditionally
  5544  	// include in API requests. By default, fields with empty or default values are
  5545  	// omitted from API requests. See
  5546  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5547  	// details.
  5548  	ForceSendFields []string `json:"-"`
  5549  	// NullFields is a list of field names (e.g. "Fields") to include in API
  5550  	// requests with the JSON null value. By default, fields with empty values are
  5551  	// omitted from API requests. See
  5552  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5553  	NullFields []string `json:"-"`
  5554  }
  5555  
  5556  func (s *UpdateTextStyleRequest) MarshalJSON() ([]byte, error) {
  5557  	type NoMethod UpdateTextStyleRequest
  5558  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5559  }
  5560  
  5561  // WeightedFontFamily: Represents a font family and weight of text.
  5562  type WeightedFontFamily struct {
  5563  	// FontFamily: The font family of the text. The font family can be any font
  5564  	// from the Font menu in Docs or from [Google Fonts]
  5565  	// (https://fonts.google.com/). If the font name is unrecognized, the text is
  5566  	// rendered in `Arial`.
  5567  	FontFamily string `json:"fontFamily,omitempty"`
  5568  	// Weight: The weight of the font. This field can have any value that's a
  5569  	// multiple of `100` between `100` and `900`, inclusive. This range corresponds
  5570  	// to the numerical values described in the CSS 2.1 Specification, section 15.6
  5571  	// (https://www.w3.org/TR/CSS21/fonts.html#font-boldness), with non-numerical
  5572  	// values disallowed. The default value is `400` ("normal"). The font weight
  5573  	// makes up just one component of the rendered font weight. A combination of
  5574  	// the `weight` and the text style's resolved `bold` value determine the
  5575  	// rendered weight, after accounting for inheritance: * If the text is bold and
  5576  	// the weight is less than `400`, the rendered weight is 400. * If the text is
  5577  	// bold and the weight is greater than or equal to `400` but is less than
  5578  	// `700`, the rendered weight is `700`. * If the weight is greater than or
  5579  	// equal to `700`, the rendered weight is equal to the weight. * If the text is
  5580  	// not bold, the rendered weight is equal to the weight.
  5581  	Weight int64 `json:"weight,omitempty"`
  5582  	// ForceSendFields is a list of field names (e.g. "FontFamily") to
  5583  	// unconditionally include in API requests. By default, fields with empty or
  5584  	// default values are omitted from API requests. See
  5585  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5586  	// details.
  5587  	ForceSendFields []string `json:"-"`
  5588  	// NullFields is a list of field names (e.g. "FontFamily") to include in API
  5589  	// requests with the JSON null value. By default, fields with empty values are
  5590  	// omitted from API requests. See
  5591  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5592  	NullFields []string `json:"-"`
  5593  }
  5594  
  5595  func (s *WeightedFontFamily) MarshalJSON() ([]byte, error) {
  5596  	type NoMethod WeightedFontFamily
  5597  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5598  }
  5599  
  5600  // WriteControl: Provides control over how write requests are executed.
  5601  type WriteControl struct {
  5602  	// RequiredRevisionId: The optional revision ID of the document the write
  5603  	// request is applied to. If this is not the latest revision of the document,
  5604  	// the request is not processed and returns a 400 bad request error. When a
  5605  	// required revision ID is returned in a response, it indicates the revision ID
  5606  	// of the document after the request was applied.
  5607  	RequiredRevisionId string `json:"requiredRevisionId,omitempty"`
  5608  	// TargetRevisionId: The optional target revision ID of the document the write
  5609  	// request is applied to. If collaborator changes have occurred after the
  5610  	// document was read using the API, the changes produced by this write request
  5611  	// are applied against the collaborator changes. This results in a new revision
  5612  	// of the document that incorporates both the collaborator changes and the
  5613  	// changes in the request, with the Docs server resolving conflicting changes.
  5614  	// When using target revision ID, the API client can be thought of as another
  5615  	// collaborator of the document. The target revision ID can only be used to
  5616  	// write to recent versions of a document. If the target revision is too far
  5617  	// behind the latest revision, the request is not processed and returns a 400
  5618  	// bad request error. The request should be tried again after retrieving the
  5619  	// latest version of the document. Usually a revision ID remains valid for use
  5620  	// as a target revision for several minutes after it's read, but for frequently
  5621  	// edited documents this window might be shorter.
  5622  	TargetRevisionId string `json:"targetRevisionId,omitempty"`
  5623  	// ForceSendFields is a list of field names (e.g. "RequiredRevisionId") to
  5624  	// unconditionally include in API requests. By default, fields with empty or
  5625  	// default values are omitted from API requests. See
  5626  	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
  5627  	// details.
  5628  	ForceSendFields []string `json:"-"`
  5629  	// NullFields is a list of field names (e.g. "RequiredRevisionId") to include
  5630  	// in API requests with the JSON null value. By default, fields with empty
  5631  	// values are omitted from API requests. See
  5632  	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
  5633  	NullFields []string `json:"-"`
  5634  }
  5635  
  5636  func (s *WriteControl) MarshalJSON() ([]byte, error) {
  5637  	type NoMethod WriteControl
  5638  	return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
  5639  }
  5640  
  5641  type DocumentsBatchUpdateCall struct {
  5642  	s                          *Service
  5643  	documentId                 string
  5644  	batchupdatedocumentrequest *BatchUpdateDocumentRequest
  5645  	urlParams_                 gensupport.URLParams
  5646  	ctx_                       context.Context
  5647  	header_                    http.Header
  5648  }
  5649  
  5650  // BatchUpdate: Applies one or more updates to the document. Each request is
  5651  // validated before being applied. If any request is not valid, then the entire
  5652  // request will fail and nothing will be applied. Some requests have replies to
  5653  // give you some information about how they are applied. Other requests do not
  5654  // need to return information; these each return an empty reply. The order of
  5655  // replies matches that of the requests. For example, suppose you call
  5656  // batchUpdate with four updates, and only the third one returns information.
  5657  // The response would have two empty replies, the reply to the third request,
  5658  // and another empty reply, in that order. Because other users may be editing
  5659  // the document, the document might not exactly reflect your changes: your
  5660  // changes may be altered with respect to collaborator changes. If there are no
  5661  // collaborators, the document should reflect your changes. In any case, the
  5662  // updates in your request are guaranteed to be applied together atomically.
  5663  //
  5664  // - documentId: The ID of the document to update.
  5665  func (r *DocumentsService) BatchUpdate(documentId string, batchupdatedocumentrequest *BatchUpdateDocumentRequest) *DocumentsBatchUpdateCall {
  5666  	c := &DocumentsBatchUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5667  	c.documentId = documentId
  5668  	c.batchupdatedocumentrequest = batchupdatedocumentrequest
  5669  	return c
  5670  }
  5671  
  5672  // Fields allows partial responses to be retrieved. See
  5673  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5674  // details.
  5675  func (c *DocumentsBatchUpdateCall) Fields(s ...googleapi.Field) *DocumentsBatchUpdateCall {
  5676  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5677  	return c
  5678  }
  5679  
  5680  // Context sets the context to be used in this call's Do method.
  5681  func (c *DocumentsBatchUpdateCall) Context(ctx context.Context) *DocumentsBatchUpdateCall {
  5682  	c.ctx_ = ctx
  5683  	return c
  5684  }
  5685  
  5686  // Header returns a http.Header that can be modified by the caller to add
  5687  // headers to the request.
  5688  func (c *DocumentsBatchUpdateCall) Header() http.Header {
  5689  	if c.header_ == nil {
  5690  		c.header_ = make(http.Header)
  5691  	}
  5692  	return c.header_
  5693  }
  5694  
  5695  func (c *DocumentsBatchUpdateCall) doRequest(alt string) (*http.Response, error) {
  5696  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5697  	var body io.Reader = nil
  5698  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchupdatedocumentrequest)
  5699  	if err != nil {
  5700  		return nil, err
  5701  	}
  5702  	c.urlParams_.Set("alt", alt)
  5703  	c.urlParams_.Set("prettyPrint", "false")
  5704  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/documents/{documentId}:batchUpdate")
  5705  	urls += "?" + c.urlParams_.Encode()
  5706  	req, err := http.NewRequest("POST", urls, body)
  5707  	if err != nil {
  5708  		return nil, err
  5709  	}
  5710  	req.Header = reqHeaders
  5711  	googleapi.Expand(req.URL, map[string]string{
  5712  		"documentId": c.documentId,
  5713  	})
  5714  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5715  }
  5716  
  5717  // Do executes the "docs.documents.batchUpdate" call.
  5718  // Any non-2xx status code is an error. Response headers are in either
  5719  // *BatchUpdateDocumentResponse.ServerResponse.Header or (if a response was
  5720  // returned at all) in error.(*googleapi.Error).Header. Use
  5721  // googleapi.IsNotModified to check whether the returned error was because
  5722  // http.StatusNotModified was returned.
  5723  func (c *DocumentsBatchUpdateCall) Do(opts ...googleapi.CallOption) (*BatchUpdateDocumentResponse, error) {
  5724  	gensupport.SetOptions(c.urlParams_, opts...)
  5725  	res, err := c.doRequest("json")
  5726  	if res != nil && res.StatusCode == http.StatusNotModified {
  5727  		if res.Body != nil {
  5728  			res.Body.Close()
  5729  		}
  5730  		return nil, gensupport.WrapError(&googleapi.Error{
  5731  			Code:   res.StatusCode,
  5732  			Header: res.Header,
  5733  		})
  5734  	}
  5735  	if err != nil {
  5736  		return nil, err
  5737  	}
  5738  	defer googleapi.CloseBody(res)
  5739  	if err := googleapi.CheckResponse(res); err != nil {
  5740  		return nil, gensupport.WrapError(err)
  5741  	}
  5742  	ret := &BatchUpdateDocumentResponse{
  5743  		ServerResponse: googleapi.ServerResponse{
  5744  			Header:         res.Header,
  5745  			HTTPStatusCode: res.StatusCode,
  5746  		},
  5747  	}
  5748  	target := &ret
  5749  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5750  		return nil, err
  5751  	}
  5752  	return ret, nil
  5753  }
  5754  
  5755  type DocumentsCreateCall struct {
  5756  	s          *Service
  5757  	document   *Document
  5758  	urlParams_ gensupport.URLParams
  5759  	ctx_       context.Context
  5760  	header_    http.Header
  5761  }
  5762  
  5763  // Create: Creates a blank document using the title given in the request. Other
  5764  // fields in the request, including any provided content, are ignored. Returns
  5765  // the created document.
  5766  func (r *DocumentsService) Create(document *Document) *DocumentsCreateCall {
  5767  	c := &DocumentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5768  	c.document = document
  5769  	return c
  5770  }
  5771  
  5772  // Fields allows partial responses to be retrieved. See
  5773  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5774  // details.
  5775  func (c *DocumentsCreateCall) Fields(s ...googleapi.Field) *DocumentsCreateCall {
  5776  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5777  	return c
  5778  }
  5779  
  5780  // Context sets the context to be used in this call's Do method.
  5781  func (c *DocumentsCreateCall) Context(ctx context.Context) *DocumentsCreateCall {
  5782  	c.ctx_ = ctx
  5783  	return c
  5784  }
  5785  
  5786  // Header returns a http.Header that can be modified by the caller to add
  5787  // headers to the request.
  5788  func (c *DocumentsCreateCall) Header() http.Header {
  5789  	if c.header_ == nil {
  5790  		c.header_ = make(http.Header)
  5791  	}
  5792  	return c.header_
  5793  }
  5794  
  5795  func (c *DocumentsCreateCall) doRequest(alt string) (*http.Response, error) {
  5796  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
  5797  	var body io.Reader = nil
  5798  	body, err := googleapi.WithoutDataWrapper.JSONReader(c.document)
  5799  	if err != nil {
  5800  		return nil, err
  5801  	}
  5802  	c.urlParams_.Set("alt", alt)
  5803  	c.urlParams_.Set("prettyPrint", "false")
  5804  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/documents")
  5805  	urls += "?" + c.urlParams_.Encode()
  5806  	req, err := http.NewRequest("POST", urls, body)
  5807  	if err != nil {
  5808  		return nil, err
  5809  	}
  5810  	req.Header = reqHeaders
  5811  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5812  }
  5813  
  5814  // Do executes the "docs.documents.create" call.
  5815  // Any non-2xx status code is an error. Response headers are in either
  5816  // *Document.ServerResponse.Header or (if a response was returned at all) in
  5817  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5818  // whether the returned error was because http.StatusNotModified was returned.
  5819  func (c *DocumentsCreateCall) Do(opts ...googleapi.CallOption) (*Document, error) {
  5820  	gensupport.SetOptions(c.urlParams_, opts...)
  5821  	res, err := c.doRequest("json")
  5822  	if res != nil && res.StatusCode == http.StatusNotModified {
  5823  		if res.Body != nil {
  5824  			res.Body.Close()
  5825  		}
  5826  		return nil, gensupport.WrapError(&googleapi.Error{
  5827  			Code:   res.StatusCode,
  5828  			Header: res.Header,
  5829  		})
  5830  	}
  5831  	if err != nil {
  5832  		return nil, err
  5833  	}
  5834  	defer googleapi.CloseBody(res)
  5835  	if err := googleapi.CheckResponse(res); err != nil {
  5836  		return nil, gensupport.WrapError(err)
  5837  	}
  5838  	ret := &Document{
  5839  		ServerResponse: googleapi.ServerResponse{
  5840  			Header:         res.Header,
  5841  			HTTPStatusCode: res.StatusCode,
  5842  		},
  5843  	}
  5844  	target := &ret
  5845  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5846  		return nil, err
  5847  	}
  5848  	return ret, nil
  5849  }
  5850  
  5851  type DocumentsGetCall struct {
  5852  	s            *Service
  5853  	documentId   string
  5854  	urlParams_   gensupport.URLParams
  5855  	ifNoneMatch_ string
  5856  	ctx_         context.Context
  5857  	header_      http.Header
  5858  }
  5859  
  5860  // Get: Gets the latest version of the specified document.
  5861  //
  5862  // - documentId: The ID of the document to retrieve.
  5863  func (r *DocumentsService) Get(documentId string) *DocumentsGetCall {
  5864  	c := &DocumentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
  5865  	c.documentId = documentId
  5866  	return c
  5867  }
  5868  
  5869  // SuggestionsViewMode sets the optional parameter "suggestionsViewMode": The
  5870  // suggestions view mode to apply to the document. This allows viewing the
  5871  // document with all suggestions inline, accepted or rejected. If one is not
  5872  // specified, DEFAULT_FOR_CURRENT_ACCESS is used.
  5873  //
  5874  // Possible values:
  5875  //
  5876  //	"DEFAULT_FOR_CURRENT_ACCESS" - The SuggestionsViewMode applied to the
  5877  //
  5878  // returned document depends on the user's current access level. If the user
  5879  // only has view access, PREVIEW_WITHOUT_SUGGESTIONS is applied. Otherwise,
  5880  // SUGGESTIONS_INLINE is applied. This is the default suggestions view mode.
  5881  //
  5882  //	"SUGGESTIONS_INLINE" - The returned document has suggestions inline.
  5883  //
  5884  // Suggested changes will be differentiated from base content within the
  5885  // document. Requests to retrieve a document using this mode will return a 403
  5886  // error if the user does not have permission to view suggested changes.
  5887  //
  5888  //	"PREVIEW_SUGGESTIONS_ACCEPTED" - The returned document is a preview with
  5889  //
  5890  // all suggested changes accepted. Requests to retrieve a document using this
  5891  // mode will return a 403 error if the user does not have permission to view
  5892  // suggested changes.
  5893  //
  5894  //	"PREVIEW_WITHOUT_SUGGESTIONS" - The returned document is a preview with
  5895  //
  5896  // all suggested changes rejected if there are any suggestions in the document.
  5897  func (c *DocumentsGetCall) SuggestionsViewMode(suggestionsViewMode string) *DocumentsGetCall {
  5898  	c.urlParams_.Set("suggestionsViewMode", suggestionsViewMode)
  5899  	return c
  5900  }
  5901  
  5902  // Fields allows partial responses to be retrieved. See
  5903  // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
  5904  // details.
  5905  func (c *DocumentsGetCall) Fields(s ...googleapi.Field) *DocumentsGetCall {
  5906  	c.urlParams_.Set("fields", googleapi.CombineFields(s))
  5907  	return c
  5908  }
  5909  
  5910  // IfNoneMatch sets an optional parameter which makes the operation fail if the
  5911  // object's ETag matches the given value. This is useful for getting updates
  5912  // only after the object has changed since the last request.
  5913  func (c *DocumentsGetCall) IfNoneMatch(entityTag string) *DocumentsGetCall {
  5914  	c.ifNoneMatch_ = entityTag
  5915  	return c
  5916  }
  5917  
  5918  // Context sets the context to be used in this call's Do method.
  5919  func (c *DocumentsGetCall) Context(ctx context.Context) *DocumentsGetCall {
  5920  	c.ctx_ = ctx
  5921  	return c
  5922  }
  5923  
  5924  // Header returns a http.Header that can be modified by the caller to add
  5925  // headers to the request.
  5926  func (c *DocumentsGetCall) Header() http.Header {
  5927  	if c.header_ == nil {
  5928  		c.header_ = make(http.Header)
  5929  	}
  5930  	return c.header_
  5931  }
  5932  
  5933  func (c *DocumentsGetCall) doRequest(alt string) (*http.Response, error) {
  5934  	reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
  5935  	if c.ifNoneMatch_ != "" {
  5936  		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
  5937  	}
  5938  	var body io.Reader = nil
  5939  	c.urlParams_.Set("alt", alt)
  5940  	c.urlParams_.Set("prettyPrint", "false")
  5941  	urls := googleapi.ResolveRelative(c.s.BasePath, "v1/documents/{documentId}")
  5942  	urls += "?" + c.urlParams_.Encode()
  5943  	req, err := http.NewRequest("GET", urls, body)
  5944  	if err != nil {
  5945  		return nil, err
  5946  	}
  5947  	req.Header = reqHeaders
  5948  	googleapi.Expand(req.URL, map[string]string{
  5949  		"documentId": c.documentId,
  5950  	})
  5951  	return gensupport.SendRequest(c.ctx_, c.s.client, req)
  5952  }
  5953  
  5954  // Do executes the "docs.documents.get" call.
  5955  // Any non-2xx status code is an error. Response headers are in either
  5956  // *Document.ServerResponse.Header or (if a response was returned at all) in
  5957  // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
  5958  // whether the returned error was because http.StatusNotModified was returned.
  5959  func (c *DocumentsGetCall) Do(opts ...googleapi.CallOption) (*Document, error) {
  5960  	gensupport.SetOptions(c.urlParams_, opts...)
  5961  	res, err := c.doRequest("json")
  5962  	if res != nil && res.StatusCode == http.StatusNotModified {
  5963  		if res.Body != nil {
  5964  			res.Body.Close()
  5965  		}
  5966  		return nil, gensupport.WrapError(&googleapi.Error{
  5967  			Code:   res.StatusCode,
  5968  			Header: res.Header,
  5969  		})
  5970  	}
  5971  	if err != nil {
  5972  		return nil, err
  5973  	}
  5974  	defer googleapi.CloseBody(res)
  5975  	if err := googleapi.CheckResponse(res); err != nil {
  5976  		return nil, gensupport.WrapError(err)
  5977  	}
  5978  	ret := &Document{
  5979  		ServerResponse: googleapi.ServerResponse{
  5980  			Header:         res.Header,
  5981  			HTTPStatusCode: res.StatusCode,
  5982  		},
  5983  	}
  5984  	target := &ret
  5985  	if err := gensupport.DecodeResponse(target, res); err != nil {
  5986  		return nil, err
  5987  	}
  5988  	return ret, nil
  5989  }
  5990  

View as plain text