R/sheets_objects.R

#' Google Sheets API Objects 
#' Reads and writes Google Sheets.
#' 
#' Auto-generated code by googleAuthR::gar_create_api_objects
#'  at 2018-07-15 14:11:51
#' filename: ~/Downloads//googlesheetsv4.auto/R/sheets_objects.R
#' api_json: api_json
#' 
#' Objects for use by the functions created by googleAuthR::gar_create_api_skeleton

#' ChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The specifications of a chart.
#' 
#' @param altText The alternative text that describes the chart
#' @param titleTextPosition The title text position
#' @param histogramChart A histogram chart specification
#' @param candlestickChart A candlestick chart specification
#' @param bubbleChart A bubble chart specification
#' @param waterfallChart A waterfall chart specification
#' @param fontName The name of the font to use by default for all chart text (e
#' @param maximized True to make a chart fill the entire space in which it's rendered with
#' @param treemapChart A treemap chart specification
#' @param hiddenDimensionStrategy Determines how the charts will use hidden rows or columns
#' @param subtitleTextFormat The subtitle text format
#' @param subtitle The subtitle of the chart
#' @param backgroundColor The background color of the entire chart
#' @param subtitleTextPosition The subtitle text position
#' @param basicChart A basic chart specification, can be one of many kinds of charts
#' @param orgChart An org chart specification
#' @param pieChart A pie chart specification
#' @param titleTextFormat The title text format
#' @param title The title of the chart
#' 
#' @return ChartSpec object
#' 
#' @family ChartSpec functions
#' @export
ChartSpec <- function(altText = NULL, titleTextPosition = NULL, histogramChart = NULL, 
    candlestickChart = NULL, bubbleChart = NULL, waterfallChart = NULL, fontName = NULL, 
    maximized = NULL, treemapChart = NULL, hiddenDimensionStrategy = NULL, subtitleTextFormat = NULL, 
    subtitle = NULL, backgroundColor = NULL, subtitleTextPosition = NULL, basicChart = NULL, 
    orgChart = NULL, pieChart = NULL, titleTextFormat = NULL, title = NULL) {
    structure(list(altText = altText, titleTextPosition = titleTextPosition, histogramChart = histogramChart, 
        candlestickChart = candlestickChart, bubbleChart = bubbleChart, waterfallChart = waterfallChart, 
        fontName = fontName, maximized = maximized, treemapChart = treemapChart, 
        hiddenDimensionStrategy = hiddenDimensionStrategy, subtitleTextFormat = subtitleTextFormat, 
        subtitle = subtitle, backgroundColor = backgroundColor, subtitleTextPosition = subtitleTextPosition, 
        basicChart = basicChart, orgChart = orgChart, pieChart = pieChart, titleTextFormat = titleTextFormat, 
        title = title), class = "gar_ChartSpec")
}

#' CreateDeveloperMetadataRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A request to create developer metadata.
#' 
#' @param developerMetadata The developer metadata to create
#' 
#' @return CreateDeveloperMetadataRequest object
#' 
#' @family CreateDeveloperMetadataRequest functions
#' @export
CreateDeveloperMetadataRequest <- function(developerMetadata = NULL) {
    structure(list(developerMetadata = developerMetadata), class = "gar_CreateDeveloperMetadataRequest")
}

#' BatchGetValuesByDataFilterResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when retrieving more than one range of values in a spreadsheetselected by DataFilters.
#' 
#' @param spreadsheetId The ID of the spreadsheet the data was retrieved from
#' @param valueRanges The requested values with the list of data filters that matched them
#' 
#' @return BatchGetValuesByDataFilterResponse object
#' 
#' @family BatchGetValuesByDataFilterResponse functions
#' @export
BatchGetValuesByDataFilterResponse <- function(spreadsheetId = NULL, valueRanges = NULL) {
    structure(list(spreadsheetId = spreadsheetId, valueRanges = valueRanges), class = "gar_BatchGetValuesByDataFilterResponse")
}

#' LineStyle Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Properties that describe the style of a line.
#' 
#' @param type The dash type of the line
#' @param width The thickness of the line, in px
#' 
#' @return LineStyle object
#' 
#' @family LineStyle functions
#' @export
LineStyle <- function(type = NULL, width = NULL) {
    structure(list(type = type, width = width), class = "gar_LineStyle")
}

#' DataFilterValueRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A range of values whose location is specified by a DataFilter.
#' 
#' @param dataFilter The data filter describing the location of the values in the spreadsheet
#' @param majorDimension The major dimension of the values
#' @param values The data to be written
#' 
#' @return DataFilterValueRange object
#' 
#' @family DataFilterValueRange functions
#' @export
DataFilterValueRange <- function(dataFilter = NULL, majorDimension = NULL, values = NULL) {
    structure(list(dataFilter = dataFilter, majorDimension = majorDimension, values = values), 
        class = "gar_DataFilterValueRange")
}

#' NumberFormat Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The number format of a cell.
#' 
#' @param pattern Pattern string used for formatting
#' @param type The type of the number format
#' 
#' @return NumberFormat object
#' 
#' @family NumberFormat functions
#' @export
NumberFormat <- function(pattern = NULL, type = NULL) {
    structure(list(pattern = pattern, type = type), class = "gar_NumberFormat")
}

#' CandlestickDomain Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The domain of a CandlestickChart.
#' 
#' @param data The data of the CandlestickDomain
#' @param reversed True to reverse the order of the domain values (horizontal axis)
#' 
#' @return CandlestickDomain object
#' 
#' @family CandlestickDomain functions
#' @export
CandlestickDomain <- function(data = NULL, reversed = NULL) {
    structure(list(data = data, reversed = reversed), class = "gar_CandlestickDomain")
}

#' SheetProperties Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Properties of a sheet.
#' 
#' @param tabColor The color of the tab in the UI
#' @param index The index of the sheet within the spreadsheet
#' @param sheetId The ID of the sheet
#' @param rightToLeft True if the sheet is an RTL sheet instead of an LTR sheet
#' @param hidden True if the sheet is hidden in the UI, false if it's visible
#' @param gridProperties Additional properties of the sheet if this sheet is a grid
#' @param sheetType The type of sheet
#' @param title The name of the sheet
#' 
#' @return SheetProperties object
#' 
#' @family SheetProperties functions
#' @export
SheetProperties <- function(tabColor = NULL, index = NULL, sheetId = NULL, rightToLeft = NULL, 
    hidden = NULL, gridProperties = NULL, sheetType = NULL, title = NULL) {
    structure(list(tabColor = tabColor, index = index, sheetId = sheetId, rightToLeft = rightToLeft, 
        hidden = hidden, gridProperties = gridProperties, sheetType = sheetType, 
        title = title), class = "gar_SheetProperties")
}

#' UpdateDimensionPropertiesRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates properties of dimensions within the specified range.
#' 
#' @param fields The fields that should be updated
#' @param properties Properties to update
#' @param range The rows or columns to update
#' 
#' @return UpdateDimensionPropertiesRequest object
#' 
#' @family UpdateDimensionPropertiesRequest functions
#' @export
UpdateDimensionPropertiesRequest <- function(fields = NULL, properties = NULL, range = NULL) {
    structure(list(fields = fields, properties = properties, range = range), class = "gar_UpdateDimensionPropertiesRequest")
}

#' SourceAndDestination Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A combination of a source range and how to extend that source.
#' 
#' @param dimension The dimension that data should be filled into
#' @param fillLength The number of rows or columns that data should be filled into
#' @param source The location of the data to use as the source of the autofill
#' 
#' @return SourceAndDestination object
#' 
#' @family SourceAndDestination functions
#' @export
SourceAndDestination <- function(dimension = NULL, fillLength = NULL, source = NULL) {
    structure(list(dimension = dimension, fillLength = fillLength, source = source), 
        class = "gar_SourceAndDestination")
}

#' OrgChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' An <a href='/chart/interactive/docs/gallery/orgchart'>org chart</a>.Org charts require a unique set of labels in labels and mayoptionally include parent_labels and tooltips.parent_labels contain, for each node, the label identifying the parentnode.  tooltips contain, for each node, an optional tooltip.For example, to describe an OrgChart with Alice as the CEO, Bob as thePresident (reporting to Alice) and Cathy as VP of Sales (also reporting toAlice), have labels contain 'Alice', 'Bob', 'Cathy',parent_labels contain '', 'Alice', 'Alice' and tooltips contain'CEO', 'President', 'VP Sales'.
#' 
#' @param tooltips The data containing the tooltip for the corresponding node
#' @param selectedNodeColor The color of the selected org chart nodes
#' @param parentLabels The data containing the label of the parent for the corresponding node
#' @param nodeSize The size of the org chart nodes
#' @param labels The data containing the labels for all the nodes in the chart
#' @param nodeColor The color of the org chart nodes
#' 
#' @return OrgChartSpec object
#' 
#' @family OrgChartSpec functions
#' @export
OrgChartSpec <- function(tooltips = NULL, selectedNodeColor = NULL, parentLabels = NULL, 
    nodeSize = NULL, labels = NULL, nodeColor = NULL) {
    structure(list(tooltips = tooltips, selectedNodeColor = selectedNodeColor, parentLabels = parentLabels, 
        nodeSize = nodeSize, labels = labels, nodeColor = nodeColor), class = "gar_OrgChartSpec")
}

#' FilterView Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A filter view.
#' 
#' @param FilterView.criteria The \link{FilterView.criteria} object or list of objects
#' @param namedRangeId The named range this filter view is backed by, if any
#' @param filterViewId The ID of the filter view
#' @param criteria The criteria for showing/hiding values per column
#' @param title The name of the filter view
#' @param range The range this filter view covers
#' @param sortSpecs The sort order per column
#' 
#' @return FilterView object
#' 
#' @family FilterView functions
#' @export
FilterView <- function(FilterView.criteria = NULL, namedRangeId = NULL, filterViewId = NULL, 
    criteria = NULL, title = NULL, range = NULL, sortSpecs = NULL) {
    structure(list(FilterView.criteria = FilterView.criteria, namedRangeId = namedRangeId, 
        filterViewId = filterViewId, criteria = criteria, title = title, range = range, 
        sortSpecs = sortSpecs), class = "gar_FilterView")
}

#' FilterView.criteria Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The criteria for showing/hiding values per column.The map's key is the column index, and the value is the criteria forthat column.
#' 
#' 
#' 
#' @return FilterView.criteria object
#' 
#' @family FilterView functions
#' @export
FilterView.criteria <- function() {
    list()
}

#' SearchDeveloperMetadataRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A request to retrieve all developer metadata matching the set of specifiedcriteria.
#' 
#' @param dataFilters The data filters describing the criteria used to determine which
#' 
#' @return SearchDeveloperMetadataRequest object
#' 
#' @family SearchDeveloperMetadataRequest functions
#' @export
SearchDeveloperMetadataRequest <- function(dataFilters = NULL) {
    structure(list(dataFilters = dataFilters), class = "gar_SearchDeveloperMetadataRequest")
}

#' BandingProperties Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Properties referring a single dimension (either row or column). If bothBandedRange.row_properties and BandedRange.column_properties areset, the fill colors are applied to cells according to the following rules:* header_color and footer_color take priority over band colors.* first_band_color takes priority over second_band_color.* row_properties takes priority over column_properties.For example, the first row color takes priority over the first columncolor, but the first column color takes priority over the second row color.Similarly, the row header takes priority over the column header in thetop left cell, but the column header takes priority over the first rowcolor if the row header is not set.
#' 
#' @param footerColor The color of the last row or column
#' @param headerColor The color of the first row or column
#' @param firstBandColor The first color that is alternating
#' @param secondBandColor The second color that is alternating
#' 
#' @return BandingProperties object
#' 
#' @family BandingProperties functions
#' @export
BandingProperties <- function(footerColor = NULL, headerColor = NULL, firstBandColor = NULL, 
    secondBandColor = NULL) {
    structure(list(footerColor = footerColor, headerColor = headerColor, firstBandColor = firstBandColor, 
        secondBandColor = secondBandColor), class = "gar_BandingProperties")
}

#' CandlestickSeries Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The series of a CandlestickData.
#' 
#' @param data The data of the CandlestickSeries
#' 
#' @return CandlestickSeries object
#' 
#' @family CandlestickSeries functions
#' @export
CandlestickSeries <- function(data = NULL) {
    structure(list(data = data), class = "gar_CandlestickSeries")
}

#' BasicFilter Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The default filter associated with a sheet.
#' 
#' @param BasicFilter.criteria The \link{BasicFilter.criteria} object or list of objects
#' @param sortSpecs The sort order per column
#' @param range The range the filter covers
#' @param criteria The criteria for showing/hiding values per column
#' 
#' @return BasicFilter object
#' 
#' @family BasicFilter functions
#' @export
BasicFilter <- function(BasicFilter.criteria = NULL, sortSpecs = NULL, range = NULL, 
    criteria = NULL) {
    structure(list(BasicFilter.criteria = BasicFilter.criteria, sortSpecs = sortSpecs, 
        range = range, criteria = criteria), class = "gar_BasicFilter")
}

#' BasicFilter.criteria Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The criteria for showing/hiding values per column.The map's key is the column index, and the value is the criteria forthat column.
#' 
#' 
#' 
#' @return BasicFilter.criteria object
#' 
#' @family BasicFilter functions
#' @export
BasicFilter.criteria <- function() {
    list()
}

#' AddProtectedRangeResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of adding a new protected range.
#' 
#' @param protectedRange The newly added protected range
#' 
#' @return AddProtectedRangeResponse object
#' 
#' @family AddProtectedRangeResponse functions
#' @export
AddProtectedRangeResponse <- function(protectedRange = NULL) {
    structure(list(protectedRange = protectedRange), class = "gar_AddProtectedRangeResponse")
}

#' HistogramChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A <a href='/chart/interactive/docs/gallery/histogram'>histogram chart</a>.A histogram chart groups data items into bins, displaying each bin as acolumn of stacked items.  Histograms are used to display the distributionof a dataset.  Each column of items represents a range into which thoseitems fall.  The number of bins can be chosen automatically or specifiedexplicitly.
#' 
#' @param legendPosition The position of the chart legend
#' @param bucketSize By default the bucket size (the range of values stacked in a single
#' @param outlierPercentile The outlier percentile is used to ensure that outliers do not adversely
#' @param showItemDividers Whether horizontal divider lines should be displayed between items in each
#' @param series The series for a histogram may be either a single series of values to be
#' 
#' @return HistogramChartSpec object
#' 
#' @family HistogramChartSpec functions
#' @export
HistogramChartSpec <- function(legendPosition = NULL, bucketSize = NULL, outlierPercentile = NULL, 
    showItemDividers = NULL, series = NULL) {
    structure(list(legendPosition = legendPosition, bucketSize = bucketSize, outlierPercentile = outlierPercentile, 
        showItemDividers = showItemDividers, series = series), class = "gar_HistogramChartSpec")
}

#' UpdateValuesResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when updating a range of values in a spreadsheet.
#' 
#' @param updatedRows The number of rows where at least one cell in the row was updated
#' @param updatedData The values of the cells after updates were applied
#' @param updatedColumns The number of columns where at least one cell in the column was updated
#' @param spreadsheetId The spreadsheet the updates were applied to
#' @param updatedRange The range (in A1 notation) that updates were applied to
#' @param updatedCells The number of cells updated
#' 
#' @return UpdateValuesResponse object
#' 
#' @family UpdateValuesResponse functions
#' @export
UpdateValuesResponse <- function(updatedRows = NULL, updatedData = NULL, updatedColumns = NULL, 
    spreadsheetId = NULL, updatedRange = NULL, updatedCells = NULL) {
    structure(list(updatedRows = updatedRows, updatedData = updatedData, updatedColumns = updatedColumns, 
        spreadsheetId = spreadsheetId, updatedRange = updatedRange, updatedCells = updatedCells), 
        class = "gar_UpdateValuesResponse")
}

#' PivotValue Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The definition of how a value in a pivot table should be calculated.
#' 
#' @param formula A custom formula to calculate the value
#' @param calculatedDisplayType If specified, indicates that pivot values should be displayed as
#' @param summarizeFunction A function to summarize the value
#' @param sourceColumnOffset The column offset of the source range that this value reads from
#' @param name A name to use for the value
#' 
#' @return PivotValue object
#' 
#' @family PivotValue functions
#' @export
PivotValue <- function(formula = NULL, calculatedDisplayType = NULL, summarizeFunction = NULL, 
    sourceColumnOffset = NULL, name = NULL) {
    structure(list(formula = formula, calculatedDisplayType = calculatedDisplayType, 
        summarizeFunction = summarizeFunction, sourceColumnOffset = sourceColumnOffset, 
        name = name), class = "gar_PivotValue")
}

#' ErrorValue Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' An error in a cell.
#' 
#' @param type The type of error
#' @param message A message with more information about the error
#' 
#' @return ErrorValue object
#' 
#' @family ErrorValue functions
#' @export
ErrorValue <- function(type = NULL, message = NULL) {
    structure(list(type = type, message = message), class = "gar_ErrorValue")
}

#' CopySheetToAnotherSpreadsheetRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request to copy a sheet across spreadsheets.
#' 
#' @param destinationSpreadsheetId The ID of the spreadsheet to copy the sheet to
#' 
#' @return CopySheetToAnotherSpreadsheetRequest object
#' 
#' @family CopySheetToAnotherSpreadsheetRequest functions
#' @export
CopySheetToAnotherSpreadsheetRequest <- function(destinationSpreadsheetId = NULL) {
    structure(list(destinationSpreadsheetId = destinationSpreadsheetId), class = "gar_CopySheetToAnotherSpreadsheetRequest")
}

#' WaterfallChartSeries Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A single series of data for a waterfall chart.
#' 
#' @param customSubtotals Custom subtotal columns appearing in this series
#' @param subtotalColumnsStyle Styles for all subtotal columns in this series
#' @param positiveColumnsStyle Styles for all columns in this series with positive values
#' @param hideTrailingSubtotal True to hide the subtotal column from the end of the series
#' @param data The data being visualized in this series
#' @param negativeColumnsStyle Styles for all columns in this series with negative values
#' 
#' @return WaterfallChartSeries object
#' 
#' @family WaterfallChartSeries functions
#' @export
WaterfallChartSeries <- function(customSubtotals = NULL, subtotalColumnsStyle = NULL, 
    positiveColumnsStyle = NULL, hideTrailingSubtotal = NULL, data = NULL, negativeColumnsStyle = NULL) {
    structure(list(customSubtotals = customSubtotals, subtotalColumnsStyle = subtotalColumnsStyle, 
        positiveColumnsStyle = positiveColumnsStyle, hideTrailingSubtotal = hideTrailingSubtotal, 
        data = data, negativeColumnsStyle = negativeColumnsStyle), class = "gar_WaterfallChartSeries")
}

#' PivotGroupSortValueBucket Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Information about which values in a pivot group should be used for sorting.
#' 
#' @param valuesIndex The offset in the PivotTable
#' @param buckets Determines the bucket from which values are chosen to sort
#' 
#' @return PivotGroupSortValueBucket object
#' 
#' @family PivotGroupSortValueBucket functions
#' @export
PivotGroupSortValueBucket <- function(valuesIndex = NULL, buckets = NULL) {
    structure(list(valuesIndex = valuesIndex, buckets = buckets), class = "gar_PivotGroupSortValueBucket")
}

#' DeleteDeveloperMetadataRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A request to delete developer metadata.
#' 
#' @param dataFilter The data filter describing the criteria used to select which developer
#' 
#' @return DeleteDeveloperMetadataRequest object
#' 
#' @family DeleteDeveloperMetadataRequest functions
#' @export
DeleteDeveloperMetadataRequest <- function(dataFilter = NULL) {
    structure(list(dataFilter = dataFilter), class = "gar_DeleteDeveloperMetadataRequest")
}

#' CandlestickChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A <a href='/chart/interactive/docs/gallery/candlestickchart'>candlestick chart</a>.
#' 
#' @param domain The domain data (horizontal axis) for the candlestick chart
#' @param data The Candlestick chart data
#' 
#' @return CandlestickChartSpec object
#' 
#' @family CandlestickChartSpec functions
#' @export
CandlestickChartSpec <- function(domain = NULL, data = NULL) {
    structure(list(domain = domain, data = data), class = "gar_CandlestickChartSpec")
}

#' BatchClearValuesByDataFilterResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when clearing a range of values selected withDataFilters in a spreadsheet.
#' 
#' @param clearedRanges The ranges that were cleared, in A1 notation
#' @param spreadsheetId The spreadsheet the updates were applied to
#' 
#' @return BatchClearValuesByDataFilterResponse object
#' 
#' @family BatchClearValuesByDataFilterResponse functions
#' @export
BatchClearValuesByDataFilterResponse <- function(clearedRanges = NULL, spreadsheetId = NULL) {
    structure(list(clearedRanges = clearedRanges, spreadsheetId = spreadsheetId), 
        class = "gar_BatchClearValuesByDataFilterResponse")
}

#' TreemapChartColorScale Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A color scale for a treemap chart.
#' 
#' @param minValueColor The background color for cells with a color value less than or equal to
#' @param noDataColor The background color for cells that have no color data associated with
#' @param midValueColor The background color for cells with a color value at the midpoint between
#' @param maxValueColor The background color for cells with a color value greater than or equal
#' 
#' @return TreemapChartColorScale object
#' 
#' @family TreemapChartColorScale functions
#' @export
TreemapChartColorScale <- function(minValueColor = NULL, noDataColor = NULL, midValueColor = NULL, 
    maxValueColor = NULL) {
    structure(list(minValueColor = minValueColor, noDataColor = noDataColor, midValueColor = midValueColor, 
        maxValueColor = maxValueColor), class = "gar_TreemapChartColorScale")
}

#' CandlestickData Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The Candlestick chart data, each containing the low, open, close, and highvalues for a series.
#' 
#' @param highSeries The range data (vertical axis) for the high/maximum value for each
#' @param lowSeries The range data (vertical axis) for the low/minimum value for each candle
#' @param closeSeries The range data (vertical axis) for the close/final value for each candle
#' @param openSeries The range data (vertical axis) for the open/initial value for each
#' 
#' @return CandlestickData object
#' 
#' @family CandlestickData functions
#' @export
CandlestickData <- function(highSeries = NULL, lowSeries = NULL, closeSeries = NULL, 
    openSeries = NULL) {
    structure(list(highSeries = highSeries, lowSeries = lowSeries, closeSeries = closeSeries, 
        openSeries = openSeries), class = "gar_CandlestickData")
}

#' EmbeddedObjectPosition Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The position of an embedded object such as a chart.
#' 
#' @param newSheet If true, the embedded object is put on a new sheet whose ID
#' @param sheetId The sheet this is on
#' @param overlayPosition The position at which the object is overlaid on top of a grid
#' 
#' @return EmbeddedObjectPosition object
#' 
#' @family EmbeddedObjectPosition functions
#' @export
EmbeddedObjectPosition <- function(newSheet = NULL, sheetId = NULL, overlayPosition = NULL) {
    structure(list(newSheet = newSheet, sheetId = sheetId, overlayPosition = overlayPosition), 
        class = "gar_EmbeddedObjectPosition")
}

#' DeleteProtectedRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Deletes the protected range with the given ID.
#' 
#' @param protectedRangeId The ID of the protected range to delete
#' 
#' @return DeleteProtectedRangeRequest object
#' 
#' @family DeleteProtectedRangeRequest functions
#' @export
DeleteProtectedRangeRequest <- function(protectedRangeId = NULL) {
    structure(list(protectedRangeId = protectedRangeId), class = "gar_DeleteProtectedRangeRequest")
}

#' DeveloperMetadataLookup Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Selects DeveloperMetadata that matches all of the specified fields.  Forexample, if only a metadata ID is specified this considers theDeveloperMetadata with that particular unique ID. If a metadata key isspecified, this considers all developer metadata with that key.  If akey, visibility, and location type are all specified, this considers alldeveloper metadata with that key and visibility that are associated with alocation of that type.  In general, thisselects all DeveloperMetadata that matches the intersection of all thespecified fields; any field or combination of fields may be specified.
#' 
#' @param metadataKey Limits the selected developer metadata to that which has a matching
#' @param visibility Limits the selected developer metadata to that which has a matching
#' @param metadataId Limits the selected developer metadata to that which has a matching
#' @param metadataValue Limits the selected developer metadata to that which has a matching
#' @param locationMatchingStrategy Determines how this lookup matches the location
#' @param metadataLocation Limits the selected developer metadata to those entries associated with
#' @param locationType Limits the selected developer metadata to those entries which are
#' 
#' @return DeveloperMetadataLookup object
#' 
#' @family DeveloperMetadataLookup functions
#' @export
DeveloperMetadataLookup <- function(metadataKey = NULL, visibility = NULL, metadataId = NULL, 
    metadataValue = NULL, locationMatchingStrategy = NULL, metadataLocation = NULL, 
    locationType = NULL) {
    structure(list(metadataKey = metadataKey, visibility = visibility, metadataId = metadataId, 
        metadataValue = metadataValue, locationMatchingStrategy = locationMatchingStrategy, 
        metadataLocation = metadataLocation, locationType = locationType), class = "gar_DeveloperMetadataLookup")
}

#' AutoFillRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Fills in more data based on existing data.
#' 
#' @param sourceAndDestination The source and destination areas to autofill
#' @param range The range to autofill
#' @param useAlternateSeries True if we should generate data with the 'alternate' series
#' 
#' @return AutoFillRequest object
#' 
#' @family AutoFillRequest functions
#' @export
AutoFillRequest <- function(sourceAndDestination = NULL, range = NULL, useAlternateSeries = NULL) {
    structure(list(sourceAndDestination = sourceAndDestination, range = range, useAlternateSeries = useAlternateSeries), 
        class = "gar_AutoFillRequest")
}

#' GradientRule Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A rule that applies a gradient color scale format, based onthe interpolation points listed. The format of a cell will varybased on its contents as compared to the values of the interpolationpoints.
#' 
#' @param midpoint An optional midway interpolation point
#' @param minpoint The starting interpolation point
#' @param maxpoint The final interpolation point
#' 
#' @return GradientRule object
#' 
#' @family GradientRule functions
#' @export
GradientRule <- function(midpoint = NULL, minpoint = NULL, maxpoint = NULL) {
    structure(list(midpoint = midpoint, minpoint = minpoint, maxpoint = maxpoint), 
        class = "gar_GradientRule")
}

#' ClearValuesRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request for clearing a range of values in a spreadsheet.
#' 
#' 
#' 
#' @return ClearValuesRequest object
#' 
#' @family ClearValuesRequest functions
#' @export
ClearValuesRequest <- function() {
    list()
}

#' SetBasicFilterRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Sets the basic filter associated with a sheet.
#' 
#' @param filter The filter to set
#' 
#' @return SetBasicFilterRequest object
#' 
#' @family SetBasicFilterRequest functions
#' @export
SetBasicFilterRequest <- function(filter = NULL) {
    structure(list(filter = filter), class = "gar_SetBasicFilterRequest")
}

#' InterpolationPoint Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A single interpolation point on a gradient conditional format.These pin the gradient color scale according to the color,type and value chosen.
#' 
#' @param value The value this interpolation point uses
#' @param color The color this interpolation point should use
#' @param type How the value should be interpreted
#' 
#' @return InterpolationPoint object
#' 
#' @family InterpolationPoint functions
#' @export
InterpolationPoint <- function(value = NULL, color = NULL, type = NULL) {
    structure(list(value = value, color = color, type = type), class = "gar_InterpolationPoint")
}

#' BatchClearValuesByDataFilterRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request for clearing more than one range selected by aDataFilter in a spreadsheet.
#' 
#' @param dataFilters The DataFilters used to determine which ranges to clear
#' 
#' @return BatchClearValuesByDataFilterRequest object
#' 
#' @family BatchClearValuesByDataFilterRequest functions
#' @export
BatchClearValuesByDataFilterRequest <- function(dataFilters = NULL) {
    structure(list(dataFilters = dataFilters), class = "gar_BatchClearValuesByDataFilterRequest")
}

#' GetSpreadsheetByDataFilterRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request for retrieving a Spreadsheet.
#' 
#' @param dataFilters The DataFilters used to select which ranges to retrieve from
#' @param includeGridData True if grid data should be returned
#' 
#' @return GetSpreadsheetByDataFilterRequest object
#' 
#' @family GetSpreadsheetByDataFilterRequest functions
#' @export
GetSpreadsheetByDataFilterRequest <- function(dataFilters = NULL, includeGridData = NULL) {
    structure(list(dataFilters = dataFilters, includeGridData = includeGridData), 
        class = "gar_GetSpreadsheetByDataFilterRequest")
}

#' DeleteEmbeddedObjectRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Deletes the embedded object with the given ID.
#' 
#' @param objectId The ID of the embedded object to delete
#' 
#' @return DeleteEmbeddedObjectRequest object
#' 
#' @family DeleteEmbeddedObjectRequest functions
#' @export
DeleteEmbeddedObjectRequest <- function(objectId = NULL) {
    structure(list(objectId = objectId), class = "gar_DeleteEmbeddedObjectRequest")
}

#' FindReplaceResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of the find/replace.
#' 
#' @param sheetsChanged The number of sheets changed
#' @param formulasChanged The number of formula cells changed
#' @param valuesChanged The number of non-formula cells changed
#' @param occurrencesChanged The number of occurrences (possibly multiple within a cell) changed
#' @param rowsChanged The number of rows changed
#' 
#' @return FindReplaceResponse object
#' 
#' @family FindReplaceResponse functions
#' @export
FindReplaceResponse <- function(sheetsChanged = NULL, formulasChanged = NULL, valuesChanged = NULL, 
    occurrencesChanged = NULL, rowsChanged = NULL) {
    structure(list(sheetsChanged = sheetsChanged, formulasChanged = formulasChanged, 
        valuesChanged = valuesChanged, occurrencesChanged = occurrencesChanged, rowsChanged = rowsChanged), 
        class = "gar_FindReplaceResponse")
}

#' UpdateValuesByDataFilterResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when updating a range of values by a data filter in aspreadsheet.
#' 
#' @param updatedData The values of the cells in the range matched by the dataFilter after all
#' @param updatedRows The number of rows where at least one cell in the row was updated
#' @param updatedColumns The number of columns where at least one cell in the column was updated
#' @param updatedRange The range (in A1 notation) that updates were applied to
#' @param updatedCells The number of cells updated
#' @param dataFilter The data filter that selected the range that was updated
#' 
#' @return UpdateValuesByDataFilterResponse object
#' 
#' @family UpdateValuesByDataFilterResponse functions
#' @export
UpdateValuesByDataFilterResponse <- function(updatedData = NULL, updatedRows = NULL, 
    updatedColumns = NULL, updatedRange = NULL, updatedCells = NULL, dataFilter = NULL) {
    structure(list(updatedData = updatedData, updatedRows = updatedRows, updatedColumns = updatedColumns, 
        updatedRange = updatedRange, updatedCells = updatedCells, dataFilter = dataFilter), 
        class = "gar_UpdateValuesByDataFilterResponse")
}

#' DeleteSheetRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Deletes the requested sheet.
#' 
#' @param sheetId The ID of the sheet to delete
#' 
#' @return DeleteSheetRequest object
#' 
#' @family DeleteSheetRequest functions
#' @export
DeleteSheetRequest <- function(sheetId = NULL) {
    structure(list(sheetId = sheetId), class = "gar_DeleteSheetRequest")
}

#' DuplicateFilterViewRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Duplicates a particular filter view.
#' 
#' @param filterId The ID of the filter being duplicated
#' 
#' @return DuplicateFilterViewRequest object
#' 
#' @family DuplicateFilterViewRequest functions
#' @export
DuplicateFilterViewRequest <- function(filterId = NULL) {
    structure(list(filterId = filterId), class = "gar_DuplicateFilterViewRequest")
}

#' MatchedValueRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A value range that was matched by one or more data filers.
#' 
#' @param valueRange The values matched by the DataFilter
#' @param dataFilters The DataFilters from the request that matched the range of
#' 
#' @return MatchedValueRange object
#' 
#' @family MatchedValueRange functions
#' @export
MatchedValueRange <- function(valueRange = NULL, dataFilters = NULL) {
    structure(list(valueRange = valueRange, dataFilters = dataFilters), class = "gar_MatchedValueRange")
}

#' DeveloperMetadataLocation Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A location where metadata may be associated in a spreadsheet.
#' 
#' @param dimensionRange Represents the row or column when metadata is associated with
#' @param spreadsheet True when metadata is associated with an entire spreadsheet
#' @param sheetId The ID of the sheet when metadata is associated with an entire sheet
#' @param locationType The type of location this object represents
#' 
#' @return DeveloperMetadataLocation object
#' 
#' @family DeveloperMetadataLocation functions
#' @export
DeveloperMetadataLocation <- function(dimensionRange = NULL, spreadsheet = NULL, 
    sheetId = NULL, locationType = NULL) {
    structure(list(dimensionRange = dimensionRange, spreadsheet = spreadsheet, sheetId = sheetId, 
        locationType = locationType), class = "gar_DeveloperMetadataLocation")
}

#' UpdateConditionalFormatRuleResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of updating a conditional format rule.
#' 
#' @param oldIndex The old index of the rule
#' @param newRule The new rule that replaced the old rule (if replacing),
#' @param oldRule The old (deleted) rule
#' @param newIndex The index of the new rule
#' 
#' @return UpdateConditionalFormatRuleResponse object
#' 
#' @family UpdateConditionalFormatRuleResponse functions
#' @export
UpdateConditionalFormatRuleResponse <- function(oldIndex = NULL, newRule = NULL, 
    oldRule = NULL, newIndex = NULL) {
    structure(list(oldIndex = oldIndex, newRule = newRule, oldRule = oldRule, newIndex = newIndex), 
        class = "gar_UpdateConditionalFormatRuleResponse")
}

#' ConditionValue Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The value of the condition.
#' 
#' @param relativeDate A relative date (based on the current date)
#' @param userEnteredValue A value the condition is based on
#' 
#' @return ConditionValue object
#' 
#' @family ConditionValue functions
#' @export
ConditionValue <- function(relativeDate = NULL, userEnteredValue = NULL) {
    structure(list(relativeDate = relativeDate, userEnteredValue = userEnteredValue), 
        class = "gar_ConditionValue")
}

#' DuplicateSheetRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Duplicates the contents of a sheet.
#' 
#' @param newSheetId If set, the ID of the new sheet
#' @param insertSheetIndex The zero-based index where the new sheet should be inserted
#' @param newSheetName The name of the new sheet
#' @param sourceSheetId The sheet to duplicate
#' 
#' @return DuplicateSheetRequest object
#' 
#' @family DuplicateSheetRequest functions
#' @export
DuplicateSheetRequest <- function(newSheetId = NULL, insertSheetIndex = NULL, newSheetName = NULL, 
    sourceSheetId = NULL) {
    structure(list(newSheetId = newSheetId, insertSheetIndex = insertSheetIndex, 
        newSheetName = newSheetName, sourceSheetId = sourceSheetId), class = "gar_DuplicateSheetRequest")
}

#' DateTimeRule Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Allows you to organize the date-time values in a source data column intobuckets based on selected parts of their date or time values. For example,consider a pivot table showing sales transactions by date:    +----------+--------------+    | Date     | SUM of Sales |    +----------+--------------+    | 1/1/2017 |      $621.14 |    | 2/3/2017 |      $708.84 |    | 5/8/2017 |      $326.84 |    ...    +----------+--------------+Applying a date-time group rule with a DateTimeRuleType of YEAR_MONTHresults in the following pivot table.    +--------------+--------------+    | Grouped Date | SUM of Sales |    +--------------+--------------+    | 2017-Jan     |   $53,731.78 |    | 2017-Feb     |   $83,475.32 |    | 2017-Mar     |   $94,385.05 |    ...    +--------------+--------------+
#' 
#' @param type The type of date-time grouping to apply
#' 
#' @return DateTimeRule object
#' 
#' @family DateTimeRule functions
#' @export
DateTimeRule <- function(type = NULL) {
    structure(list(type = type), class = "gar_DateTimeRule")
}

#' TreemapChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A <a href='/chart/interactive/docs/gallery/treemap'>Treemap chart</a>.
#' 
#' @param sizeData The data that determines the size of each treemap data cell
#' @param textFormat The text format for all labels on the chart
#' @param parentLabels The data the contains the treemap cells' parent labels
#' @param headerColor The background color for header cells
#' @param labels The data that contains the treemap cell labels
#' @param colorData The data that determines the background color of each treemap data cell
#' @param maxValue The maximum possible data value
#' @param colorScale The color scale for data cells in the treemap chart
#' @param hideTooltips True to hide tooltips
#' @param hintedLevels The number of additional data levels beyond the labeled levels to be shown
#' @param minValue The minimum possible data value
#' @param levels The number of data levels to show on the treemap chart
#' 
#' @return TreemapChartSpec object
#' 
#' @family TreemapChartSpec functions
#' @export
TreemapChartSpec <- function(sizeData = NULL, textFormat = NULL, parentLabels = NULL, 
    headerColor = NULL, labels = NULL, colorData = NULL, maxValue = NULL, colorScale = NULL, 
    hideTooltips = NULL, hintedLevels = NULL, minValue = NULL, levels = NULL) {
    structure(list(sizeData = sizeData, textFormat = textFormat, parentLabels = parentLabels, 
        headerColor = headerColor, labels = labels, colorData = colorData, maxValue = maxValue, 
        colorScale = colorScale, hideTooltips = hideTooltips, hintedLevels = hintedLevels, 
        minValue = minValue, levels = levels), class = "gar_TreemapChartSpec")
}

#' ExtendedValue Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The kinds of value that a cell in a spreadsheet can have.
#' 
#' @param numberValue Represents a double value
#' @param errorValue Represents an error
#' @param stringValue Represents a string value
#' @param boolValue Represents a boolean value
#' @param formulaValue Represents a formula
#' 
#' @return ExtendedValue object
#' 
#' @family ExtendedValue functions
#' @export
ExtendedValue <- function(numberValue = NULL, errorValue = NULL, stringValue = NULL, 
    boolValue = NULL, formulaValue = NULL) {
    structure(list(numberValue = numberValue, errorValue = errorValue, stringValue = stringValue, 
        boolValue = boolValue, formulaValue = formulaValue), class = "gar_ExtendedValue")
}

#' HistogramSeries Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A histogram series containing the series color and data.
#' 
#' @param barColor The color of the column representing this series in each bucket
#' @param data The data for this histogram series
#' 
#' @return HistogramSeries object
#' 
#' @family HistogramSeries functions
#' @export
HistogramSeries <- function(barColor = NULL, data = NULL) {
    structure(list(barColor = barColor, data = data), class = "gar_HistogramSeries")
}

#' BatchClearValuesResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when clearing a range of values in a spreadsheet.
#' 
#' @param clearedRanges The ranges that were cleared, in A1 notation
#' @param spreadsheetId The spreadsheet the updates were applied to
#' 
#' @return BatchClearValuesResponse object
#' 
#' @family BatchClearValuesResponse functions
#' @export
BatchClearValuesResponse <- function(clearedRanges = NULL, spreadsheetId = NULL) {
    structure(list(clearedRanges = clearedRanges, spreadsheetId = spreadsheetId), 
        class = "gar_BatchClearValuesResponse")
}

#' Spreadsheet Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Resource that represents a spreadsheet.
#' 
#' @param developerMetadata The developer metadata associated with a spreadsheet
#' @param sheets The sheets that are part of a spreadsheet
#' @param spreadsheetUrl The url of the spreadsheet
#' @param properties Overall properties of a spreadsheet
#' @param spreadsheetId The ID of the spreadsheet
#' @param namedRanges The named ranges defined in a spreadsheet
#' 
#' @return Spreadsheet object
#' 
#' @family Spreadsheet functions
#' @export
Spreadsheet <- function(developerMetadata = NULL, sheets = NULL, spreadsheetUrl = NULL, 
    properties = NULL, spreadsheetId = NULL, namedRanges = NULL) {
    structure(list(developerMetadata = developerMetadata, sheets = sheets, spreadsheetUrl = spreadsheetUrl, 
        properties = properties, spreadsheetId = spreadsheetId, namedRanges = namedRanges), 
        class = "gar_Spreadsheet")
}

#' BandedRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A banded (alternating colors) range in a sheet.
#' 
#' @param range The range over which these properties are applied
#' @param bandedRangeId The id of the banded range
#' @param rowProperties Properties for row bands
#' @param columnProperties Properties for column bands
#' 
#' @return BandedRange object
#' 
#' @family BandedRange functions
#' @export
BandedRange <- function(range = NULL, bandedRangeId = NULL, rowProperties = NULL, 
    columnProperties = NULL) {
    structure(list(range = range, bandedRangeId = bandedRangeId, rowProperties = rowProperties, 
        columnProperties = columnProperties), class = "gar_BandedRange")
}

#' AddChartRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Adds a chart to a sheet in the spreadsheet.
#' 
#' @param chart The chart that should be added to the spreadsheet, including the position
#' 
#' @return AddChartRequest object
#' 
#' @family AddChartRequest functions
#' @export
AddChartRequest <- function(chart = NULL) {
    structure(list(chart = chart), class = "gar_AddChartRequest")
}

#' HistogramRule Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Allows you to organize the numeric values in a source data column intobuckets of a constant size. All values from HistogramRule.start toHistogramRule.end are placed into groups of sizeHistogramRule.interval. In addition, all values belowHistogramRule.start are placed in one group, and all values aboveHistogramRule.end are placed in another. OnlyHistogramRule.interval is required, though if HistogramRule.startand HistogramRule.end are both provided, HistogramRule.start mustbe less than HistogramRule.end. For example, a pivot table showingaverage purchase amount by age that has 50+ rows:    +-----+-------------------+    | Age | AVERAGE of Amount |    +-----+-------------------+    | 16  |            $27.13 |    | 17  |             $5.24 |    | 18  |            $20.15 |    ...    +-----+-------------------+could be turned into a pivot table that looks like the one below byapplying a histogram group rule with a HistogramRule.start of 25,an HistogramRule.interval of 20, and an HistogramRule.endof 65.    +-------------+-------------------+    | Grouped Age | AVERAGE of Amount |    +-------------+-------------------+    | < 25        |            $19.34 |    | 25-45       |            $31.43 |    | 45-65       |            $35.87 |    | > 65        |            $27.55 |    +-------------+-------------------+    | Grand Total |            $29.12 |    +-------------+-------------------+
#' 
#' @param interval The size of the buckets that are created
#' @param start The minimum value at which items are placed into buckets
#' @param end The maximum value at which items are placed into buckets
#' 
#' @return HistogramRule object
#' 
#' @family HistogramRule functions
#' @export
HistogramRule <- function(interval = NULL, start = NULL, end = NULL) {
    structure(list(interval = interval, start = start, end = end), class = "gar_HistogramRule")
}

#' UpdateProtectedRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates an existing protected range with the specifiedprotectedRangeId.
#' 
#' @param protectedRange The protected range to update with the new properties
#' @param fields The fields that should be updated
#' 
#' @return UpdateProtectedRangeRequest object
#' 
#' @family UpdateProtectedRangeRequest functions
#' @export
UpdateProtectedRangeRequest <- function(protectedRange = NULL, fields = NULL) {
    structure(list(protectedRange = protectedRange, fields = fields), class = "gar_UpdateProtectedRangeRequest")
}

#' DataFilter Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Filter that describes what data should be selected or returned from arequest.
#' 
#' @param a1Range Selects data that matches the specified A1 range
#' @param gridRange Selects data that matches the range described by the GridRange
#' @param developerMetadataLookup Selects data associated with the developer metadata matching the criteria
#' 
#' @return DataFilter object
#' 
#' @family DataFilter functions
#' @export
DataFilter <- function(a1Range = NULL, gridRange = NULL, developerMetadataLookup = NULL) {
    structure(list(a1Range = a1Range, gridRange = gridRange, developerMetadataLookup = developerMetadataLookup), 
        class = "gar_DataFilter")
}

#' TextFormat Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The format of a run of text in a cell.Absent values indicate that the field isn't specified.
#' 
#' @param fontFamily The font family
#' @param strikethrough True if the text has a strikethrough
#' @param italic True if the text is italicized
#' @param fontSize The size of the font
#' @param underline True if the text is underlined
#' @param bold True if the text is bold
#' @param foregroundColor The foreground color of the text
#' 
#' @return TextFormat object
#' 
#' @family TextFormat functions
#' @export
TextFormat <- function(fontFamily = NULL, strikethrough = NULL, italic = NULL, fontSize = NULL, 
    underline = NULL, bold = NULL, foregroundColor = NULL) {
    structure(list(fontFamily = fontFamily, strikethrough = strikethrough, italic = italic, 
        fontSize = fontSize, underline = underline, bold = bold, foregroundColor = foregroundColor), 
        class = "gar_TextFormat")
}

#' AddSheetResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of adding a sheet.
#' 
#' @param properties The properties of the newly added sheet
#' 
#' @return AddSheetResponse object
#' 
#' @family AddSheetResponse functions
#' @export
AddSheetResponse <- function(properties = NULL) {
    structure(list(properties = properties), class = "gar_AddSheetResponse")
}

#' PivotGroupRule Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' An optional setting on a PivotGroup that defines buckets for the valuesin the source data column rather than breaking out each individual value.Only one PivotGroup with a group rule may be added for each column inthe source data, though on any given column you may add both aPivotGroup that has a rule and a PivotGroup that does not.
#' 
#' @param histogramRule A HistogramRule
#' @param dateTimeRule A DateTimeRule
#' @param manualRule A ManualRule
#' 
#' @return PivotGroupRule object
#' 
#' @family PivotGroupRule functions
#' @export
PivotGroupRule <- function(histogramRule = NULL, dateTimeRule = NULL, manualRule = NULL) {
    structure(list(histogramRule = histogramRule, dateTimeRule = dateTimeRule, manualRule = manualRule), 
        class = "gar_PivotGroupRule")
}

#' AddFilterViewResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of adding a filter view.
#' 
#' @param filter The newly added filter view
#' 
#' @return AddFilterViewResponse object
#' 
#' @family AddFilterViewResponse functions
#' @export
AddFilterViewResponse <- function(filter = NULL) {
    structure(list(filter = filter), class = "gar_AddFilterViewResponse")
}

#' IterativeCalculationSettings Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Settings to control how circular dependencies are resolved with iterativecalculation.
#' 
#' @param convergenceThreshold When iterative calculation is enabled and successive results differ by
#' @param maxIterations When iterative calculation is enabled, the maximum number of calculation
#' 
#' @return IterativeCalculationSettings object
#' 
#' @family IterativeCalculationSettings functions
#' @export
IterativeCalculationSettings <- function(convergenceThreshold = NULL, maxIterations = NULL) {
    structure(list(convergenceThreshold = convergenceThreshold, maxIterations = maxIterations), 
        class = "gar_IterativeCalculationSettings")
}

#' SpreadsheetProperties Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Properties of a spreadsheet.
#' 
#' @param locale The locale of the spreadsheet in one of the following formats:
#' @param iterativeCalculationSettings Determines whether and how circular references are resolved with iterative
#' @param autoRecalc The amount of time to wait before volatile functions are recalculated
#' @param defaultFormat The default format of all cells in the spreadsheet
#' @param title The title of the spreadsheet
#' @param timeZone The time zone of the spreadsheet, in CLDR format such as
#' 
#' @return SpreadsheetProperties object
#' 
#' @family SpreadsheetProperties functions
#' @export
SpreadsheetProperties <- function(locale = NULL, iterativeCalculationSettings = NULL, 
    autoRecalc = NULL, defaultFormat = NULL, title = NULL, timeZone = NULL) {
    structure(list(locale = locale, iterativeCalculationSettings = iterativeCalculationSettings, 
        autoRecalc = autoRecalc, defaultFormat = defaultFormat, title = title, timeZone = timeZone), 
        class = "gar_SpreadsheetProperties")
}

#' OverlayPosition Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The location an object is overlaid on top of a grid.
#' 
#' @param widthPixels The width of the object, in pixels
#' @param offsetXPixels The horizontal offset, in pixels, that the object is offset
#' @param anchorCell The cell the object is anchored to
#' @param offsetYPixels The vertical offset, in pixels, that the object is offset
#' @param heightPixels The height of the object, in pixels
#' 
#' @return OverlayPosition object
#' 
#' @family OverlayPosition functions
#' @export
OverlayPosition <- function(widthPixels = NULL, offsetXPixels = NULL, anchorCell = NULL, 
    offsetYPixels = NULL, heightPixels = NULL) {
    structure(list(widthPixels = widthPixels, offsetXPixels = offsetXPixels, anchorCell = anchorCell, 
        offsetYPixels = offsetYPixels, heightPixels = heightPixels), class = "gar_OverlayPosition")
}

#' RepeatCellRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates all cells in the range to the values in the given Cell object.Only the fields listed in the fields field are updated; others areunchanged.If writing a cell with a formula, the formula's ranges will automaticallyincrement for each field in the range.For example, if writing a cell with formula `=A1` into range B2:C4,B2 would be `=A1`, B3 would be `=A2`, B4 would be `=A3`,C2 would be `=B1`, C3 would be `=B2`, C4 would be `=B3`.To keep the formula's ranges static, use the `$` indicator.For example, use the formula `=$A$1` to prevent both the row and thecolumn from incrementing.
#' 
#' @param fields The fields that should be updated
#' @param cell The data to write
#' @param range The range to repeat the cell in
#' 
#' @return RepeatCellRequest object
#' 
#' @family RepeatCellRequest functions
#' @export
RepeatCellRequest <- function(fields = NULL, cell = NULL, range = NULL) {
    structure(list(fields = fields, cell = cell, range = range), class = "gar_RepeatCellRequest")
}

#' AddChartResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of adding a chart to a spreadsheet.
#' 
#' @param chart The newly added chart
#' 
#' @return AddChartResponse object
#' 
#' @family AddChartResponse functions
#' @export
AddChartResponse <- function(chart = NULL) {
    structure(list(chart = chart), class = "gar_AddChartResponse")
}

#' InsertDimensionRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Inserts rows or columns in a sheet at a particular index.
#' 
#' @param inheritFromBefore Whether dimension properties should be extended from the dimensions
#' @param range The dimensions to insert
#' 
#' @return InsertDimensionRequest object
#' 
#' @family InsertDimensionRequest functions
#' @export
InsertDimensionRequest <- function(inheritFromBefore = NULL, range = NULL) {
    structure(list(inheritFromBefore = inheritFromBefore, range = range), class = "gar_InsertDimensionRequest")
}

#' UpdateSpreadsheetPropertiesRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates properties of a spreadsheet.
#' 
#' @param fields The fields that should be updated
#' @param properties The properties to update
#' 
#' @return UpdateSpreadsheetPropertiesRequest object
#' 
#' @family UpdateSpreadsheetPropertiesRequest functions
#' @export
UpdateSpreadsheetPropertiesRequest <- function(fields = NULL, properties = NULL) {
    structure(list(fields = fields, properties = properties), class = "gar_UpdateSpreadsheetPropertiesRequest")
}

#' BatchUpdateValuesRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request for updating more than one range of values in a spreadsheet.
#' 
#' @param responseValueRenderOption Determines how values in the response should be rendered
#' @param includeValuesInResponse Determines if the update response should include the values
#' @param valueInputOption How the input data should be interpreted
#' @param data The new values to apply to the spreadsheet
#' @param responseDateTimeRenderOption Determines how dates, times, and durations in the response should be
#' 
#' @return BatchUpdateValuesRequest object
#' 
#' @family BatchUpdateValuesRequest functions
#' @export
BatchUpdateValuesRequest <- function(responseValueRenderOption = NULL, includeValuesInResponse = NULL, 
    valueInputOption = NULL, data = NULL, responseDateTimeRenderOption = NULL) {
    structure(list(responseValueRenderOption = responseValueRenderOption, includeValuesInResponse = includeValuesInResponse, 
        valueInputOption = valueInputOption, data = data, responseDateTimeRenderOption = responseDateTimeRenderOption), 
        class = "gar_BatchUpdateValuesRequest")
}

#' ProtectedRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A protected range.
#' 
#' @param description The description of this protected range
#' @param unprotectedRanges The list of unprotected ranges within a protected sheet
#' @param namedRangeId The named range this protected range is backed by, if any
#' @param protectedRangeId The ID of the protected range
#' @param warningOnly True if this protected range will show a warning when editing
#' @param requestingUserCanEdit True if the user who requested this protected range can edit the
#' @param range The range that is being protected
#' @param editors The users and groups with edit access to the protected range
#' 
#' @return ProtectedRange object
#' 
#' @family ProtectedRange functions
#' @export
ProtectedRange <- function(description = NULL, unprotectedRanges = NULL, namedRangeId = NULL, 
    protectedRangeId = NULL, warningOnly = NULL, requestingUserCanEdit = NULL, range = NULL, 
    editors = NULL) {
    structure(list(description = description, unprotectedRanges = unprotectedRanges, 
        namedRangeId = namedRangeId, protectedRangeId = protectedRangeId, warningOnly = warningOnly, 
        requestingUserCanEdit = requestingUserCanEdit, range = range, editors = editors), 
        class = "gar_ProtectedRange")
}

#' DimensionProperties Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Properties about a dimension.
#' 
#' @param developerMetadata The developer metadata associated with a single row or column
#' @param pixelSize The height (if a row) or width (if a column) of the dimension in pixels
#' @param hiddenByFilter True if this dimension is being filtered
#' @param hiddenByUser True if this dimension is explicitly hidden
#' 
#' @return DimensionProperties object
#' 
#' @family DimensionProperties functions
#' @export
DimensionProperties <- function(developerMetadata = NULL, pixelSize = NULL, hiddenByFilter = NULL, 
    hiddenByUser = NULL) {
    structure(list(developerMetadata = developerMetadata, pixelSize = pixelSize, 
        hiddenByFilter = hiddenByFilter, hiddenByUser = hiddenByUser), class = "gar_DimensionProperties")
}

#' DimensionRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A range along a single dimension on a sheet.All indexes are zero-based.Indexes are half open: the start index is inclusiveand the end index is exclusive.Missing indexes indicate the range is unbounded on that side.
#' 
#' @param dimension The dimension of the span
#' @param startIndex The start (inclusive) of the span, or not set if unbounded
#' @param endIndex The end (exclusive) of the span, or not set if unbounded
#' @param sheetId The sheet this span is on
#' 
#' @return DimensionRange object
#' 
#' @family DimensionRange functions
#' @export
DimensionRange <- function(dimension = NULL, startIndex = NULL, endIndex = NULL, 
    sheetId = NULL) {
    structure(list(dimension = dimension, startIndex = startIndex, endIndex = endIndex, 
        sheetId = sheetId), class = "gar_DimensionRange")
}

#' NamedRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A named range.
#' 
#' @param name The name of the named range
#' @param namedRangeId The ID of the named range
#' @param range The range this represents
#' 
#' @return NamedRange object
#' 
#' @family NamedRange functions
#' @export
NamedRange <- function(name = NULL, namedRangeId = NULL, range = NULL) {
    structure(list(name = name, namedRangeId = namedRangeId, range = range), class = "gar_NamedRange")
}

#' CutPasteRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Moves data from the source to the destination.
#' 
#' @param source The source data to cut
#' @param pasteType What kind of data to paste
#' @param destination The top-left coordinate where the data should be pasted
#' 
#' @return CutPasteRequest object
#' 
#' @family CutPasteRequest functions
#' @export
CutPasteRequest <- function(source = NULL, pasteType = NULL, destination = NULL) {
    structure(list(source = source, pasteType = pasteType, destination = destination), 
        class = "gar_CutPasteRequest")
}

#' BasicChartSeries Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A single series of data in a chart.For example, if charting stock prices over time, multiple series may exist,one for the 'Open Price', 'High Price', 'Low Price' and 'Close Price'.
#' 
#' @param targetAxis The minor axis that will specify the range of values for this series
#' @param color The color for elements (i
#' @param lineStyle The line style of this series
#' @param series The data being visualized in this chart series
#' @param type The type of this series
#' 
#' @return BasicChartSeries object
#' 
#' @family BasicChartSeries functions
#' @export
BasicChartSeries <- function(targetAxis = NULL, color = NULL, lineStyle = NULL, series = NULL, 
    type = NULL) {
    structure(list(targetAxis = targetAxis, color = color, lineStyle = lineStyle, 
        series = series, type = type), class = "gar_BasicChartSeries")
}

#' Borders Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The borders of the cell.
#' 
#' @param bottom The bottom border of the cell
#' @param top The top border of the cell
#' @param left The left border of the cell
#' @param right The right border of the cell
#' 
#' @return Borders object
#' 
#' @family Borders functions
#' @export
Borders <- function(bottom = NULL, top = NULL, left = NULL, right = NULL) {
    structure(list(bottom = bottom, top = top, left = left, right = right), class = "gar_Borders")
}

#' AutoResizeDimensionsRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Automatically resizes one or more dimensions based on the contentsof the cells in that dimension.
#' 
#' @param dimensions The dimensions to automatically resize
#' 
#' @return AutoResizeDimensionsRequest object
#' 
#' @family AutoResizeDimensionsRequest functions
#' @export
AutoResizeDimensionsRequest <- function(dimensions = NULL) {
    structure(list(dimensions = dimensions), class = "gar_AutoResizeDimensionsRequest")
}

#' ManualRule Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Allows you to manually organize the values in a source data column intobuckets with names of your choosing. For example, a pivot table thataggregates population by state:    +-------+-------------------+    | State | SUM of Population |    +-------+-------------------+    | AK    |               0.7 |    | AL    |               4.8 |    | AR    |               2.9 |    ...    +-------+-------------------+could be turned into a pivot table that aggregates population by time zoneby providing a list of groups (for example, groupName = 'Central',items = ['AL', 'AR', 'IA', ...]) to a manual group rule.Note that a similar effect could be achieved by adding a time zone columnto the source data and adjusting the pivot table.    +-----------+-------------------+    | Time Zone | SUM of Population |    +-----------+-------------------+    | Central   |             106.3 |    | Eastern   |             151.9 |    | Mountain  |              17.4 |    ...    +-----------+-------------------+
#' 
#' @param groups The list of group names and the corresponding items from the source data
#' 
#' @return ManualRule object
#' 
#' @family ManualRule functions
#' @export
ManualRule <- function(groups = NULL) {
    structure(list(groups = groups), class = "gar_ManualRule")
}

#' UpdateBordersRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates the borders of a range.If a field is not set in the request, that means the border remains as-is.For example, with two subsequent UpdateBordersRequest: 1. range: A1:A5 `{ top: RED, bottom: WHITE }` 2. range: A1:A5 `{ left: BLUE }`That would result in A1:A5 having a borders of`{ top: RED, bottom: WHITE, left: BLUE }`.If you want to clear a border, explicitly set the style toNONE.
#' 
#' @param right The border to put at the right of the range
#' @param range The range whose borders should be updated
#' @param innerHorizontal The horizontal border to put within the range
#' @param top The border to put at the top of the range
#' @param left The border to put at the left of the range
#' @param bottom The border to put at the bottom of the range
#' @param innerVertical The vertical border to put within the range
#' 
#' @return UpdateBordersRequest object
#' 
#' @family UpdateBordersRequest functions
#' @export
UpdateBordersRequest <- function(right = NULL, range = NULL, innerHorizontal = NULL, 
    top = NULL, left = NULL, bottom = NULL, innerVertical = NULL) {
    structure(list(right = right, range = range, innerHorizontal = innerHorizontal, 
        top = top, left = left, bottom = bottom, innerVertical = innerVertical), 
        class = "gar_UpdateBordersRequest")
}

#' CellFormat Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The format of a cell.
#' 
#' @param padding The padding of the cell
#' @param verticalAlignment The vertical alignment of the value in the cell
#' @param borders The borders of the cell
#' @param textDirection The direction of the text in the cell
#' @param textRotation The rotation applied to text in a cell
#' @param wrapStrategy The wrap strategy for the value in the cell
#' @param numberFormat A format describing how number values should be represented to the user
#' @param hyperlinkDisplayType How a hyperlink, if it exists, should be displayed in the cell
#' @param horizontalAlignment The horizontal alignment of the value in the cell
#' @param textFormat The format of the text in the cell (unless overridden by a format run)
#' @param backgroundColor The background color of the cell
#' 
#' @return CellFormat object
#' 
#' @family CellFormat functions
#' @export
CellFormat <- function(padding = NULL, verticalAlignment = NULL, borders = NULL, 
    textDirection = NULL, textRotation = NULL, wrapStrategy = NULL, numberFormat = NULL, 
    hyperlinkDisplayType = NULL, horizontalAlignment = NULL, textFormat = NULL, backgroundColor = NULL) {
    structure(list(padding = padding, verticalAlignment = verticalAlignment, borders = borders, 
        textDirection = textDirection, textRotation = textRotation, wrapStrategy = wrapStrategy, 
        numberFormat = numberFormat, hyperlinkDisplayType = hyperlinkDisplayType, 
        horizontalAlignment = horizontalAlignment, textFormat = textFormat, backgroundColor = backgroundColor), 
        class = "gar_CellFormat")
}

#' ClearValuesResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when clearing a range of values in a spreadsheet.
#' 
#' @param spreadsheetId The spreadsheet the updates were applied to
#' @param clearedRange The range (in A1 notation) that was cleared
#' 
#' @return ClearValuesResponse object
#' 
#' @family ClearValuesResponse functions
#' @export
ClearValuesResponse <- function(spreadsheetId = NULL, clearedRange = NULL) {
    structure(list(spreadsheetId = spreadsheetId, clearedRange = clearedRange), class = "gar_ClearValuesResponse")
}

#' DeleteConditionalFormatRuleRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Deletes a conditional format rule at the given index.All subsequent rules' indexes are decremented.
#' 
#' @param index The zero-based index of the rule to be deleted
#' @param sheetId The sheet the rule is being deleted from
#' 
#' @return DeleteConditionalFormatRuleRequest object
#' 
#' @family DeleteConditionalFormatRuleRequest functions
#' @export
DeleteConditionalFormatRuleRequest <- function(index = NULL, sheetId = NULL) {
    structure(list(index = index, sheetId = sheetId), class = "gar_DeleteConditionalFormatRuleRequest")
}

#' AddBandingResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of adding a banded range.
#' 
#' @param bandedRange The banded range that was added
#' 
#' @return AddBandingResponse object
#' 
#' @family AddBandingResponse functions
#' @export
AddBandingResponse <- function(bandedRange = NULL) {
    structure(list(bandedRange = bandedRange), class = "gar_AddBandingResponse")
}

#' DeleteNamedRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Removes the named range with the given ID from the spreadsheet.
#' 
#' @param namedRangeId The ID of the named range to delete
#' 
#' @return DeleteNamedRangeRequest object
#' 
#' @family DeleteNamedRangeRequest functions
#' @export
DeleteNamedRangeRequest <- function(namedRangeId = NULL) {
    structure(list(namedRangeId = namedRangeId), class = "gar_DeleteNamedRangeRequest")
}

#' AddDimensionGroupResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of adding a group.
#' 
#' @param dimensionGroups All groups of a dimension after adding a group to that dimension
#' 
#' @return AddDimensionGroupResponse object
#' 
#' @family AddDimensionGroupResponse functions
#' @export
AddDimensionGroupResponse <- function(dimensionGroups = NULL) {
    structure(list(dimensionGroups = dimensionGroups), class = "gar_AddDimensionGroupResponse")
}

#' WaterfallChartCustomSubtotal Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A custom subtotal column for a waterfall chart series.
#' 
#' @param subtotalIndex The 0-based index of a data point within the series
#' @param dataIsSubtotal True if the data point at subtotal_index is the subtotal
#' @param label A label for the subtotal column
#' 
#' @return WaterfallChartCustomSubtotal object
#' 
#' @family WaterfallChartCustomSubtotal functions
#' @export
WaterfallChartCustomSubtotal <- function(subtotalIndex = NULL, dataIsSubtotal = NULL, 
    label = NULL) {
    structure(list(subtotalIndex = subtotalIndex, dataIsSubtotal = dataIsSubtotal, 
        label = label), class = "gar_WaterfallChartCustomSubtotal")
}

#' ChartData Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The data included in a domain or series.
#' 
#' @param sourceRange The source ranges of the data
#' 
#' @return ChartData object
#' 
#' @family ChartData functions
#' @export
ChartData <- function(sourceRange = NULL) {
    structure(list(sourceRange = sourceRange), class = "gar_ChartData")
}

#' BatchGetValuesResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when retrieving more than one range of values in a spreadsheet.
#' 
#' @param spreadsheetId The ID of the spreadsheet the data was retrieved from
#' @param valueRanges The requested values
#' 
#' @return BatchGetValuesResponse object
#' 
#' @family BatchGetValuesResponse functions
#' @export
BatchGetValuesResponse <- function(spreadsheetId = NULL, valueRanges = NULL) {
    structure(list(spreadsheetId = spreadsheetId, valueRanges = valueRanges), class = "gar_BatchGetValuesResponse")
}

#' UpdateBandingRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates properties of the supplied banded range.
#' 
#' @param fields The fields that should be updated
#' @param bandedRange The banded range to update with the new properties
#' 
#' @return UpdateBandingRequest object
#' 
#' @family UpdateBandingRequest functions
#' @export
UpdateBandingRequest <- function(fields = NULL, bandedRange = NULL) {
    structure(list(fields = fields, bandedRange = bandedRange), class = "gar_UpdateBandingRequest")
}

#' Color Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Represents a color in the RGBA color space. This representation is designedfor simplicity of conversion to/from color representations in variouslanguages over compactness; for example, the fields of this representationcan be trivially provided to the constructor of 'java.awt.Color' in Java; itcan also be trivially provided to UIColor's '+colorWithRed:green:blue:alpha'method in iOS; and, with just a little work, it can be easily formatted intoa CSS 'rgba()' string in JavaScript, as well. Here are some examples:Example (Java):     import com.google.type.Color;     // ...     public static java.awt.Color fromProto(Color protocolor) {       float alpha = protocolor.hasAlpha()           ? protocolor.getAlpha().getValue()           : 1.0;       return new java.awt.Color(           protocolor.getRed(),           protocolor.getGreen(),           protocolor.getBlue(),           alpha);     }     public static Color toProto(java.awt.Color color) {       float red = (float) color.getRed();       float green = (float) color.getGreen();       float blue = (float) color.getBlue();       float denominator = 255.0;       Color.Builder resultBuilder =           Color               .newBuilder()               .setRed(red / denominator)               .setGreen(green / denominator)               .setBlue(blue / denominator);       int alpha = color.getAlpha();       if (alpha != 255) {         result.setAlpha(             FloatValue                 .newBuilder()                 .setValue(((float) alpha) / denominator)                 .build());       }       return resultBuilder.build();     }     // ...Example (iOS / Obj-C):     // ...     static UIColor* fromProto(Color* protocolor) {        float red = [protocolor red];        float green = [protocolor green];        float blue = [protocolor blue];        FloatValue* alpha_wrapper = [protocolor alpha];        float alpha = 1.0;        if (alpha_wrapper != nil) {          alpha = [alpha_wrapper value];        }        return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];     }     static Color* toProto(UIColor* color) {         CGFloat red, green, blue, alpha;         if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {           return nil;         }         Color* result = [Color alloc] init];         [result setRed:red];         [result setGreen:green];         [result setBlue:blue];         if (alpha <= 0.9999) {           [result setAlpha:floatWrapperWithValue(alpha)];         }         [result autorelease];         return result;    }    // ... Example (JavaScript):    // ...    var protoToCssColor = function(rgb_color) {       var redFrac = rgb_color.red || 0.0;       var greenFrac = rgb_color.green || 0.0;       var blueFrac = rgb_color.blue || 0.0;       var red = Math.floor(redFrac * 255);       var green = Math.floor(greenFrac * 255);       var blue = Math.floor(blueFrac * 255);       if (!('alpha' in rgb_color)) {          return rgbToCssColor_(red, green, blue);       }       var alphaFrac = rgb_color.alpha.value || 0.0;       var rgbParams = [red, green, blue].join(',');       return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');    };    var rgbToCssColor_ = function(red, green, blue) {      var rgbNumber = new Number((red << 16) | (green << 8) | blue);      var hexString = rgbNumber.toString(16);      var missingZeros = 6 - hexString.length;      var resultBuilder = ['#'];      for (var i = 0; i < missingZeros; i++) {         resultBuilder.push('0');      }      resultBuilder.push(hexString);      return resultBuilder.join('');    };    // ...
#' 
#' @param red The amount of red in the color as a value in the interval [0, 1]
#' @param green The amount of green in the color as a value in the interval [0, 1]
#' @param blue The amount of blue in the color as a value in the interval [0, 1]
#' @param alpha The fraction of this color that should be applied to the pixel
#' 
#' @return Color object
#' 
#' @family Color functions
#' @export
Color <- function(red = NULL, green = NULL, blue = NULL, alpha = NULL) {
    structure(list(red = red, green = green, blue = blue, alpha = alpha), class = "gar_Color")
}

#' ManualRuleGroup Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A group name and a list of items from the source data that should be placedin the group with this name.
#' 
#' @param groupName The group name, which must be a string
#' @param items The items in the source data that should be placed into this group
#' 
#' @return ManualRuleGroup object
#' 
#' @family ManualRuleGroup functions
#' @export
ManualRuleGroup <- function(groupName = NULL, items = NULL) {
    structure(list(groupName = groupName, items = items), class = "gar_ManualRuleGroup")
}

#' PivotGroup Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A single grouping (either row or column) in a pivot table.
#' 
#' @param sourceColumnOffset The column offset of the source range that this grouping is based on
#' @param sortOrder The order the values in this group should be sorted
#' @param valueBucket The bucket of the opposite pivot group to sort by
#' @param showTotals True if the pivot table should include the totals for this grouping
#' @param valueMetadata Metadata about values in the grouping
#' @param groupRule The group rule to apply to this row/column group
#' @param label The labels to use for the row/column groups which can be customized
#' @param repeatHeadings True if the headings in this pivot group should be repeated
#' 
#' @return PivotGroup object
#' 
#' @family PivotGroup functions
#' @export
PivotGroup <- function(sourceColumnOffset = NULL, sortOrder = NULL, valueBucket = NULL, 
    showTotals = NULL, valueMetadata = NULL, groupRule = NULL, label = NULL, repeatHeadings = NULL) {
    structure(list(sourceColumnOffset = sourceColumnOffset, sortOrder = sortOrder, 
        valueBucket = valueBucket, showTotals = showTotals, valueMetadata = valueMetadata, 
        groupRule = groupRule, label = label, repeatHeadings = repeatHeadings), class = "gar_PivotGroup")
}

#' PivotTable Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A pivot table.
#' 
#' @param PivotTable.criteria The \link{PivotTable.criteria} object or list of objects
#' @param criteria An optional mapping of filters per source column offset
#' @param rows Each row grouping in the pivot table
#' @param valueLayout Whether values should be listed horizontally (as columns)
#' @param values A list of values to include in the pivot table
#' @param source The range the pivot table is reading data from
#' @param columns Each column grouping in the pivot table
#' 
#' @return PivotTable object
#' 
#' @family PivotTable functions
#' @export
PivotTable <- function(PivotTable.criteria = NULL, criteria = NULL, rows = NULL, 
    valueLayout = NULL, values = NULL, source = NULL, columns = NULL) {
    structure(list(PivotTable.criteria = PivotTable.criteria, criteria = criteria, 
        rows = rows, valueLayout = valueLayout, values = values, source = source, 
        columns = columns), class = "gar_PivotTable")
}

#' PivotTable.criteria Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' An optional mapping of filters per source column offset.The filters are applied before aggregating data into the pivot table.The map's key is the column offset of the source range that you want tofilter, and the value is the criteria for that column.For example, if the source was `C10:E15`, a key of `0` will have the filterfor column `C`, whereas the key `1` is for column `D`.
#' 
#' 
#' 
#' @return PivotTable.criteria object
#' 
#' @family PivotTable functions
#' @export
PivotTable.criteria <- function() {
    list()
}

#' ChartSourceRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Source ranges for a chart.
#' 
#' @param sources The ranges of data for a series or domain
#' 
#' @return ChartSourceRange object
#' 
#' @family ChartSourceRange functions
#' @export
ChartSourceRange <- function(sources = NULL) {
    structure(list(sources = sources), class = "gar_ChartSourceRange")
}

#' SearchDeveloperMetadataResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A reply to a developer metadata search request.
#' 
#' @param matchedDeveloperMetadata The metadata matching the criteria of the search request
#' 
#' @return SearchDeveloperMetadataResponse object
#' 
#' @family SearchDeveloperMetadataResponse functions
#' @export
SearchDeveloperMetadataResponse <- function(matchedDeveloperMetadata = NULL) {
    structure(list(matchedDeveloperMetadata = matchedDeveloperMetadata), class = "gar_SearchDeveloperMetadataResponse")
}

#' ValueRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Data within a range of the spreadsheet.
#' 
#' @param range The range the values cover, in A1 notation
#' @param majorDimension The major dimension of the values
#' @param values The data that was read or to be written
#' 
#' @return ValueRange object
#' 
#' @family ValueRange functions
#' @export
ValueRange <- function(range = NULL, majorDimension = NULL, values = NULL) {
    structure(list(range = range, majorDimension = majorDimension, values = values), 
        class = "gar_ValueRange")
}

#' AppendCellsRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Adds new cells after the last row with data in a sheet,inserting new rows into the sheet if necessary.
#' 
#' @param rows The data to append
#' @param fields The fields of CellData that should be updated
#' @param sheetId The sheet ID to append the data to
#' 
#' @return AppendCellsRequest object
#' 
#' @family AppendCellsRequest functions
#' @export
AppendCellsRequest <- function(rows = NULL, fields = NULL, sheetId = NULL) {
    structure(list(rows = rows, fields = fields, sheetId = sheetId), class = "gar_AppendCellsRequest")
}

#' AddBandingRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Adds a new banded range to the spreadsheet.
#' 
#' @param bandedRange The banded range to add
#' 
#' @return AddBandingRequest object
#' 
#' @family AddBandingRequest functions
#' @export
AddBandingRequest <- function(bandedRange = NULL) {
    structure(list(bandedRange = bandedRange), class = "gar_AddBandingRequest")
}

#' Response Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A single response from an update.
#' 
#' @param addSheet A reply from adding a sheet
#' @param createDeveloperMetadata A reply from creating a developer metadata entry
#' @param updateConditionalFormatRule A reply from updating a conditional format rule
#' @param addNamedRange A reply from adding a named range
#' @param deleteDeveloperMetadata A reply from deleting a developer metadata entry
#' @param addFilterView A reply from adding a filter view
#' @param addBanding A reply from adding a banded range
#' @param addProtectedRange A reply from adding a protected range
#' @param duplicateSheet A reply from duplicating a sheet
#' @param deleteConditionalFormatRule A reply from deleting a conditional format rule
#' @param updateEmbeddedObjectPosition A reply from updating an embedded object's position
#' @param deleteDimensionGroup A reply from deleting a dimension group
#' @param duplicateFilterView A reply from duplicating a filter view
#' @param addDimensionGroup A reply from adding a dimension group
#' @param addChart A reply from adding a chart
#' @param updateDeveloperMetadata A reply from updating a developer metadata entry
#' @param findReplace A reply from doing a find/replace
#' 
#' @return Response object
#' 
#' @family Response functions
#' @export
Response <- function(addSheet = NULL, createDeveloperMetadata = NULL, updateConditionalFormatRule = NULL, 
    addNamedRange = NULL, deleteDeveloperMetadata = NULL, addFilterView = NULL, addBanding = NULL, 
    addProtectedRange = NULL, duplicateSheet = NULL, deleteConditionalFormatRule = NULL, 
    updateEmbeddedObjectPosition = NULL, deleteDimensionGroup = NULL, duplicateFilterView = NULL, 
    addDimensionGroup = NULL, addChart = NULL, updateDeveloperMetadata = NULL, findReplace = NULL) {
    structure(list(addSheet = addSheet, createDeveloperMetadata = createDeveloperMetadata, 
        updateConditionalFormatRule = updateConditionalFormatRule, addNamedRange = addNamedRange, 
        deleteDeveloperMetadata = deleteDeveloperMetadata, addFilterView = addFilterView, 
        addBanding = addBanding, addProtectedRange = addProtectedRange, duplicateSheet = duplicateSheet, 
        deleteConditionalFormatRule = deleteConditionalFormatRule, updateEmbeddedObjectPosition = updateEmbeddedObjectPosition, 
        deleteDimensionGroup = deleteDimensionGroup, duplicateFilterView = duplicateFilterView, 
        addDimensionGroup = addDimensionGroup, addChart = addChart, updateDeveloperMetadata = updateDeveloperMetadata, 
        findReplace = findReplace), class = "gar_Response")
}

#' EmbeddedChart Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A chart embedded in a sheet.
#' 
#' @param spec The specification of the chart
#' @param chartId The ID of the chart
#' @param position The position of the chart
#' 
#' @return EmbeddedChart object
#' 
#' @family EmbeddedChart functions
#' @export
EmbeddedChart <- function(spec = NULL, chartId = NULL, position = NULL) {
    structure(list(spec = spec, chartId = chartId, position = position), class = "gar_EmbeddedChart")
}

#' TextFormatRun Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A run of a text format. The format of this run continues until the startindex of the next run.When updating, all fields must be set.
#' 
#' @param startIndex The character index where this run starts
#' @param format The format of this run
#' 
#' @return TextFormatRun object
#' 
#' @family TextFormatRun functions
#' @export
TextFormatRun <- function(startIndex = NULL, format = NULL) {
    structure(list(startIndex = startIndex, format = format), class = "gar_TextFormatRun")
}

#' InsertRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Inserts cells into a range, shifting the existing cells over or down.
#' 
#' @param shiftDimension The dimension which will be shifted when inserting cells
#' @param range The range to insert new cells into
#' 
#' @return InsertRangeRequest object
#' 
#' @family InsertRangeRequest functions
#' @export
InsertRangeRequest <- function(shiftDimension = NULL, range = NULL) {
    structure(list(shiftDimension = shiftDimension, range = range), class = "gar_InsertRangeRequest")
}

#' AddNamedRangeResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of adding a named range.
#' 
#' @param namedRange The named range to add
#' 
#' @return AddNamedRangeResponse object
#' 
#' @family AddNamedRangeResponse functions
#' @export
AddNamedRangeResponse <- function(namedRange = NULL) {
    structure(list(namedRange = namedRange), class = "gar_AddNamedRangeResponse")
}

#' BatchUpdateValuesByDataFilterResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when updating a range of values in a spreadsheet.
#' 
#' @param totalUpdatedColumns The total number of columns where at least one cell in the column was
#' @param spreadsheetId The spreadsheet the updates were applied to
#' @param totalUpdatedRows The total number of rows where at least one cell in the row was updated
#' @param responses The response for each range updated
#' @param totalUpdatedSheets The total number of sheets where at least one cell in the sheet was
#' @param totalUpdatedCells The total number of cells updated
#' 
#' @return BatchUpdateValuesByDataFilterResponse object
#' 
#' @family BatchUpdateValuesByDataFilterResponse functions
#' @export
BatchUpdateValuesByDataFilterResponse <- function(totalUpdatedColumns = NULL, spreadsheetId = NULL, 
    totalUpdatedRows = NULL, responses = NULL, totalUpdatedSheets = NULL, totalUpdatedCells = NULL) {
    structure(list(totalUpdatedColumns = totalUpdatedColumns, spreadsheetId = spreadsheetId, 
        totalUpdatedRows = totalUpdatedRows, responses = responses, totalUpdatedSheets = totalUpdatedSheets, 
        totalUpdatedCells = totalUpdatedCells), class = "gar_BatchUpdateValuesByDataFilterResponse")
}

#' RowData Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Data about each cell in a row.
#' 
#' @param values The values in the row, one per column
#' 
#' @return RowData object
#' 
#' @family RowData functions
#' @export
RowData <- function(values = NULL) {
    structure(list(values = values), class = "gar_RowData")
}

#' Border Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A border along a cell.
#' 
#' @param color The color of the border
#' @param width The width of the border, in pixels
#' @param style The style of the border
#' 
#' @return Border object
#' 
#' @family Border functions
#' @export
Border <- function(color = NULL, width = NULL, style = NULL) {
    structure(list(color = color, width = width, style = style), class = "gar_Border")
}

#' GridData Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Data in the grid, as well as metadata about the dimensions.
#' 
#' @param rowData The data in the grid, one entry per row,
#' @param startRow The first row this GridData refers to, zero-based
#' @param columnMetadata Metadata about the requested columns in the grid, starting with the column
#' @param startColumn The first column this GridData refers to, zero-based
#' @param rowMetadata Metadata about the requested rows in the grid, starting with the row
#' 
#' @return GridData object
#' 
#' @family GridData functions
#' @export
GridData <- function(rowData = NULL, startRow = NULL, columnMetadata = NULL, startColumn = NULL, 
    rowMetadata = NULL) {
    structure(list(rowData = rowData, startRow = startRow, columnMetadata = columnMetadata, 
        startColumn = startColumn, rowMetadata = rowMetadata), class = "gar_GridData")
}

#' UpdateNamedRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates properties of the named range with the specifiednamedRangeId.
#' 
#' @param namedRange The named range to update with the new properties
#' @param fields The fields that should be updated
#' 
#' @return UpdateNamedRangeRequest object
#' 
#' @family UpdateNamedRangeRequest functions
#' @export
UpdateNamedRangeRequest <- function(namedRange = NULL, fields = NULL) {
    structure(list(namedRange = namedRange, fields = fields), class = "gar_UpdateNamedRangeRequest")
}

#' FindReplaceRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Finds and replaces data in cells over a range, sheet, or all sheets.
#' 
#' @param sheetId The sheet to find/replace over
#' @param matchCase True if the search is case sensitive
#' @param allSheets True to find/replace over all sheets
#' @param includeFormulas True if the search should include cells with formulas
#' @param matchEntireCell True if the find value should match the entire cell
#' @param find The value to search
#' @param searchByRegex True if the find value is a regex
#' @param replacement The value to use as the replacement
#' @param range The range to find/replace over
#' 
#' @return FindReplaceRequest object
#' 
#' @family FindReplaceRequest functions
#' @export
FindReplaceRequest <- function(sheetId = NULL, matchCase = NULL, allSheets = NULL, 
    includeFormulas = NULL, matchEntireCell = NULL, find = NULL, searchByRegex = NULL, 
    replacement = NULL, range = NULL) {
    structure(list(sheetId = sheetId, matchCase = matchCase, allSheets = allSheets, 
        includeFormulas = includeFormulas, matchEntireCell = matchEntireCell, find = find, 
        searchByRegex = searchByRegex, replacement = replacement, range = range), 
        class = "gar_FindReplaceRequest")
}

#' AddSheetRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Adds a new sheet.When a sheet is added at a given index,all subsequent sheets' indexes are incremented.To add an object sheet, use AddChartRequest instead and specifyEmbeddedObjectPosition.sheetId orEmbeddedObjectPosition.newSheet.
#' 
#' @param properties The properties the new sheet should have
#' 
#' @return AddSheetRequest object
#' 
#' @family AddSheetRequest functions
#' @export
AddSheetRequest <- function(properties = NULL) {
    structure(list(properties = properties), class = "gar_AddSheetRequest")
}

#' UpdateCellsRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates all cells in a range with new data.
#' 
#' @param rows The data to write
#' @param fields The fields of CellData that should be updated
#' @param start The coordinate to start writing data at
#' @param range The range to write data to
#' 
#' @return UpdateCellsRequest object
#' 
#' @family UpdateCellsRequest functions
#' @export
UpdateCellsRequest <- function(rows = NULL, fields = NULL, start = NULL, range = NULL) {
    structure(list(rows = rows, fields = fields, start = start, range = range), class = "gar_UpdateCellsRequest")
}

#' DeleteConditionalFormatRuleResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of deleting a conditional format rule.
#' 
#' @param rule The rule that was deleted
#' 
#' @return DeleteConditionalFormatRuleResponse object
#' 
#' @family DeleteConditionalFormatRuleResponse functions
#' @export
DeleteConditionalFormatRuleResponse <- function(rule = NULL) {
    structure(list(rule = rule), class = "gar_DeleteConditionalFormatRuleResponse")
}

#' RandomizeRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Randomizes the order of the rows in a range.
#' 
#' @param range The range to randomize
#' 
#' @return RandomizeRangeRequest object
#' 
#' @family RandomizeRangeRequest functions
#' @export
RandomizeRangeRequest <- function(range = NULL) {
    structure(list(range = range), class = "gar_RandomizeRangeRequest")
}

#' DeleteRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Deletes a range of cells, shifting other cells into the deleted area.
#' 
#' @param shiftDimension The dimension from which deleted cells will be replaced with
#' @param range The range of cells to delete
#' 
#' @return DeleteRangeRequest object
#' 
#' @family DeleteRangeRequest functions
#' @export
DeleteRangeRequest <- function(shiftDimension = NULL, range = NULL) {
    structure(list(shiftDimension = shiftDimension, range = range), class = "gar_DeleteRangeRequest")
}

#' GridCoordinate Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A coordinate in a sheet.All indexes are zero-based.
#' 
#' @param rowIndex The row index of the coordinate
#' @param columnIndex The column index of the coordinate
#' @param sheetId The sheet this coordinate is on
#' 
#' @return GridCoordinate object
#' 
#' @family GridCoordinate functions
#' @export
GridCoordinate <- function(rowIndex = NULL, columnIndex = NULL, sheetId = NULL) {
    structure(list(rowIndex = rowIndex, columnIndex = columnIndex, sheetId = sheetId), 
        class = "gar_GridCoordinate")
}

#' UpdateSheetPropertiesRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates properties of the sheet with the specifiedsheetId.
#' 
#' @param fields The fields that should be updated
#' @param properties The properties to update
#' 
#' @return UpdateSheetPropertiesRequest object
#' 
#' @family UpdateSheetPropertiesRequest functions
#' @export
UpdateSheetPropertiesRequest <- function(fields = NULL, properties = NULL) {
    structure(list(fields = fields, properties = properties), class = "gar_UpdateSheetPropertiesRequest")
}

#' UnmergeCellsRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Unmerges cells in the given range.
#' 
#' @param range The range within which all cells should be unmerged
#' 
#' @return UnmergeCellsRequest object
#' 
#' @family UnmergeCellsRequest functions
#' @export
UnmergeCellsRequest <- function(range = NULL) {
    structure(list(range = range), class = "gar_UnmergeCellsRequest")
}

#' GridProperties Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Properties of a grid.
#' 
#' @param frozenRowCount The number of rows that are frozen in the grid
#' @param frozenColumnCount The number of columns that are frozen in the grid
#' @param columnCount The number of columns in the grid
#' @param columnGroupControlAfter True if the column grouping control toggle is shown after the group
#' @param rowGroupControlAfter True if the row grouping control toggle is shown after the group
#' @param rowCount The number of rows in the grid
#' @param hideGridlines True if the grid isn't showing gridlines in the UI
#' 
#' @return GridProperties object
#' 
#' @family GridProperties functions
#' @export
GridProperties <- function(frozenRowCount = NULL, frozenColumnCount = NULL, columnCount = NULL, 
    columnGroupControlAfter = NULL, rowGroupControlAfter = NULL, rowCount = NULL, 
    hideGridlines = NULL) {
    structure(list(frozenRowCount = frozenRowCount, frozenColumnCount = frozenColumnCount, 
        columnCount = columnCount, columnGroupControlAfter = columnGroupControlAfter, 
        rowGroupControlAfter = rowGroupControlAfter, rowCount = rowCount, hideGridlines = hideGridlines), 
        class = "gar_GridProperties")
}

#' UpdateEmbeddedObjectPositionResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of updating an embedded object's position.
#' 
#' @param position The new position of the embedded object
#' 
#' @return UpdateEmbeddedObjectPositionResponse object
#' 
#' @family UpdateEmbeddedObjectPositionResponse functions
#' @export
UpdateEmbeddedObjectPositionResponse <- function(position = NULL) {
    structure(list(position = position), class = "gar_UpdateEmbeddedObjectPositionResponse")
}

#' Sheet Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A sheet in a spreadsheet.
#' 
#' @param properties The properties of the sheet
#' @param developerMetadata The developer metadata associated with a sheet
#' @param protectedRanges The protected ranges in this sheet
#' @param conditionalFormats The conditional format rules in this sheet
#' @param columnGroups All column groups on this sheet, ordered by increasing range start index,
#' @param basicFilter The filter on this sheet, if any
#' @param merges The ranges that are merged together
#' @param bandedRanges The banded (alternating colors) ranges on this sheet
#' @param charts The specifications of every chart on this sheet
#' @param filterViews The filter views in this sheet
#' @param rowGroups All row groups on this sheet, ordered by increasing range start index, then
#' @param data Data in the grid, if this is a grid sheet
#' 
#' @return Sheet object
#' 
#' @family Sheet functions
#' @export
Sheet <- function(properties = NULL, developerMetadata = NULL, protectedRanges = NULL, 
    conditionalFormats = NULL, columnGroups = NULL, basicFilter = NULL, merges = NULL, 
    bandedRanges = NULL, charts = NULL, filterViews = NULL, rowGroups = NULL, data = NULL) {
    structure(list(properties = properties, developerMetadata = developerMetadata, 
        protectedRanges = protectedRanges, conditionalFormats = conditionalFormats, 
        columnGroups = columnGroups, basicFilter = basicFilter, merges = merges, 
        bandedRanges = bandedRanges, charts = charts, filterViews = filterViews, 
        rowGroups = rowGroups, data = data), class = "gar_Sheet")
}

#' SortSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A sort order associated with a specific column or row.
#' 
#' @param dimensionIndex The dimension the sort should be applied to
#' @param sortOrder The order data should be sorted
#' 
#' @return SortSpec object
#' 
#' @family SortSpec functions
#' @export
SortSpec <- function(dimensionIndex = NULL, sortOrder = NULL) {
    structure(list(dimensionIndex = dimensionIndex, sortOrder = sortOrder), class = "gar_SortSpec")
}

#' BooleanRule Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A rule that may or may not match, depending on the condition.
#' 
#' @param format The format to apply
#' @param condition The condition of the rule
#' 
#' @return BooleanRule object
#' 
#' @family BooleanRule functions
#' @export
BooleanRule <- function(format = NULL, condition = NULL) {
    structure(list(format = format, condition = condition), class = "gar_BooleanRule")
}

#' PivotGroupValueMetadata Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Metadata about a value in a pivot grouping.
#' 
#' @param value The calculated value the metadata corresponds to
#' @param collapsed True if the data corresponding to the value is collapsed
#' 
#' @return PivotGroupValueMetadata object
#' 
#' @family PivotGroupValueMetadata functions
#' @export
PivotGroupValueMetadata <- function(value = NULL, collapsed = NULL) {
    structure(list(value = value, collapsed = collapsed), class = "gar_PivotGroupValueMetadata")
}

#' FilterCriteria Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Criteria for showing/hiding rows in a filter or filter view.
#' 
#' @param hiddenValues Values that should be hidden
#' @param condition A condition that must be true for values to be shown
#' 
#' @return FilterCriteria object
#' 
#' @family FilterCriteria functions
#' @export
FilterCriteria <- function(hiddenValues = NULL, condition = NULL) {
    structure(list(hiddenValues = hiddenValues, condition = condition), class = "gar_FilterCriteria")
}

#' WaterfallChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A waterfall chart.
#' 
#' @param series The data this waterfall chart is visualizing
#' @param connectorLineStyle The line style for the connector lines
#' @param domain The domain data (horizontal axis) for the waterfall chart
#' @param firstValueIsTotal True to interpret the first value as a total
#' @param stackedType The stacked type
#' @param hideConnectorLines True to hide connector lines between columns
#' 
#' @return WaterfallChartSpec object
#' 
#' @family WaterfallChartSpec functions
#' @export
WaterfallChartSpec <- function(series = NULL, connectorLineStyle = NULL, domain = NULL, 
    firstValueIsTotal = NULL, stackedType = NULL, hideConnectorLines = NULL) {
    structure(list(series = series, connectorLineStyle = connectorLineStyle, domain = domain, 
        firstValueIsTotal = firstValueIsTotal, stackedType = stackedType, hideConnectorLines = hideConnectorLines), 
        class = "gar_WaterfallChartSpec")
}

#' Editors Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The editors of a protected range.
#' 
#' @param users The email addresses of users with edit access to the protected range
#' @param groups The email addresses of groups with edit access to the protected range
#' @param domainUsersCanEdit True if anyone in the document's domain has edit access to the protected
#' 
#' @return Editors object
#' 
#' @family Editors functions
#' @export
Editors <- function(users = NULL, groups = NULL, domainUsersCanEdit = NULL) {
    structure(list(users = users, groups = groups, domainUsersCanEdit = domainUsersCanEdit), 
        class = "gar_Editors")
}

#' UpdateConditionalFormatRuleRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates a conditional format rule at the given index,or moves a conditional format rule to another index.
#' 
#' @param rule The rule that should replace the rule at the given index
#' @param index The zero-based index of the rule that should be replaced or moved
#' @param sheetId The sheet of the rule to move
#' @param newIndex The zero-based new index the rule should end up at
#' 
#' @return UpdateConditionalFormatRuleRequest object
#' 
#' @family UpdateConditionalFormatRuleRequest functions
#' @export
UpdateConditionalFormatRuleRequest <- function(rule = NULL, index = NULL, sheetId = NULL, 
    newIndex = NULL) {
    structure(list(rule = rule, index = index, sheetId = sheetId, newIndex = newIndex), 
        class = "gar_UpdateConditionalFormatRuleRequest")
}

#' DataValidationRule Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A data validation rule.
#' 
#' @param strict True if invalid data should be rejected
#' @param inputMessage A message to show the user when adding data to the cell
#' @param condition The condition that data in the cell must match
#' @param showCustomUi True if the UI should be customized based on the kind of condition
#' 
#' @return DataValidationRule object
#' 
#' @family DataValidationRule functions
#' @export
DataValidationRule <- function(strict = NULL, inputMessage = NULL, condition = NULL, 
    showCustomUi = NULL) {
    structure(list(strict = strict, inputMessage = inputMessage, condition = condition, 
        showCustomUi = showCustomUi), class = "gar_DataValidationRule")
}

#' BasicChartDomain Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The domain of a chart.For example, if charting stock prices over time, this would be the date.
#' 
#' @param domain The data of the domain
#' @param reversed True to reverse the order of the domain values (horizontal axis)
#' 
#' @return BasicChartDomain object
#' 
#' @family BasicChartDomain functions
#' @export
BasicChartDomain <- function(domain = NULL, reversed = NULL) {
    structure(list(domain = domain, reversed = reversed), class = "gar_BasicChartDomain")
}

#' PasteDataRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Inserts data into the spreadsheet starting at the specified coordinate.
#' 
#' @param html True if the data is HTML
#' @param coordinate The coordinate at which the data should start being inserted
#' @param data The data to insert
#' @param delimiter The delimiter in the data
#' @param type How the data should be pasted
#' 
#' @return PasteDataRequest object
#' 
#' @family PasteDataRequest functions
#' @export
PasteDataRequest <- function(html = NULL, coordinate = NULL, data = NULL, delimiter = NULL, 
    type = NULL) {
    structure(list(html = html, coordinate = coordinate, data = data, delimiter = delimiter, 
        type = type), class = "gar_PasteDataRequest")
}

#' UpdateDeveloperMetadataResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response from updating developer metadata.
#' 
#' @param developerMetadata The updated developer metadata
#' 
#' @return UpdateDeveloperMetadataResponse object
#' 
#' @family UpdateDeveloperMetadataResponse functions
#' @export
UpdateDeveloperMetadataResponse <- function(developerMetadata = NULL) {
    structure(list(developerMetadata = developerMetadata), class = "gar_UpdateDeveloperMetadataResponse")
}

#' AppendDimensionRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Appends rows or columns to the end of a sheet.
#' 
#' @param dimension Whether rows or columns should be appended
#' @param length The number of rows or columns to append
#' @param sheetId The sheet to append rows or columns to
#' 
#' @return AppendDimensionRequest object
#' 
#' @family AppendDimensionRequest functions
#' @export
AppendDimensionRequest <- function(dimension = NULL, length = NULL, sheetId = NULL) {
    structure(list(dimension = dimension, length = length, sheetId = sheetId), class = "gar_AppendDimensionRequest")
}

#' AddNamedRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Adds a named range to the spreadsheet.
#' 
#' @param namedRange The named range to add
#' 
#' @return AddNamedRangeRequest object
#' 
#' @family AddNamedRangeRequest functions
#' @export
AddNamedRangeRequest <- function(namedRange = NULL) {
    structure(list(namedRange = namedRange), class = "gar_AddNamedRangeRequest")
}

#' CreateDeveloperMetadataResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response from creating developer metadata.
#' 
#' @param developerMetadata The developer metadata that was created
#' 
#' @return CreateDeveloperMetadataResponse object
#' 
#' @family CreateDeveloperMetadataResponse functions
#' @export
CreateDeveloperMetadataResponse <- function(developerMetadata = NULL) {
    structure(list(developerMetadata = developerMetadata), class = "gar_CreateDeveloperMetadataResponse")
}

#' UpdateEmbeddedObjectPositionRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Update an embedded object's position (such as a moving or resizing achart or image).
#' 
#' @param newPosition An explicit position to move the embedded object to
#' @param fields The fields of OverlayPosition
#' @param objectId The ID of the object to moved
#' 
#' @return UpdateEmbeddedObjectPositionRequest object
#' 
#' @family UpdateEmbeddedObjectPositionRequest functions
#' @export
UpdateEmbeddedObjectPositionRequest <- function(newPosition = NULL, fields = NULL, 
    objectId = NULL) {
    structure(list(newPosition = newPosition, fields = fields, objectId = objectId), 
        class = "gar_UpdateEmbeddedObjectPositionRequest")
}

#' TextRotation Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The rotation applied to text in a cell.
#' 
#' @param vertical If true, text reads top to bottom, but the orientation of individual
#' @param angle The angle between the standard orientation and the desired orientation
#' 
#' @return TextRotation object
#' 
#' @family TextRotation functions
#' @export
TextRotation <- function(vertical = NULL, angle = NULL) {
    structure(list(vertical = vertical, angle = angle), class = "gar_TextRotation")
}

#' DeleteDimensionGroupResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of deleting a group.
#' 
#' @param dimensionGroups All groups of a dimension after deleting a group from that dimension
#' 
#' @return DeleteDimensionGroupResponse object
#' 
#' @family DeleteDimensionGroupResponse functions
#' @export
DeleteDimensionGroupResponse <- function(dimensionGroups = NULL) {
    structure(list(dimensionGroups = dimensionGroups), class = "gar_DeleteDimensionGroupResponse")
}

#' UpdateDeveloperMetadataRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A request to update properties of developer metadata.Updates the properties of the developer metadata selected by the filters tothe values provided in the DeveloperMetadata resource.  Callers mustspecify the properties they wish to update in the fields parameter, as wellas specify at least one DataFilter matching the metadata they wish toupdate.
#' 
#' @param dataFilters The filters matching the developer metadata entries to update
#' @param fields The fields that should be updated
#' @param developerMetadata The value that all metadata matched by the data filters will be updated to
#' 
#' @return UpdateDeveloperMetadataRequest object
#' 
#' @family UpdateDeveloperMetadataRequest functions
#' @export
UpdateDeveloperMetadataRequest <- function(dataFilters = NULL, fields = NULL, developerMetadata = NULL) {
    structure(list(dataFilters = dataFilters, fields = fields, developerMetadata = developerMetadata), 
        class = "gar_UpdateDeveloperMetadataRequest")
}

#' PieChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A <a href='/chart/interactive/docs/gallery/piechart'>pie chart</a>.
#' 
#' @param legendPosition Where the legend of the pie chart should be drawn
#' @param pieHole The size of the hole in the pie chart
#' @param domain The data that covers the domain of the pie chart
#' @param threeDimensional True if the pie is three dimensional
#' @param series The data that covers the one and only series of the pie chart
#' 
#' @return PieChartSpec object
#' 
#' @family PieChartSpec functions
#' @export
PieChartSpec <- function(legendPosition = NULL, pieHole = NULL, domain = NULL, threeDimensional = NULL, 
    series = NULL) {
    structure(list(legendPosition = legendPosition, pieHole = pieHole, domain = domain, 
        threeDimensional = threeDimensional, series = series), class = "gar_PieChartSpec")
}

#' UpdateFilterViewRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates properties of the filter view.
#' 
#' @param fields The fields that should be updated
#' @param filter The new properties of the filter view
#' 
#' @return UpdateFilterViewRequest object
#' 
#' @family UpdateFilterViewRequest functions
#' @export
UpdateFilterViewRequest <- function(fields = NULL, filter = NULL) {
    structure(list(fields = fields, filter = filter), class = "gar_UpdateFilterViewRequest")
}

#' WaterfallChartColumnStyle Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Styles for a waterfall chart column.
#' 
#' @param label The label of the column's legend
#' @param color The color of the column
#' 
#' @return WaterfallChartColumnStyle object
#' 
#' @family WaterfallChartColumnStyle functions
#' @export
WaterfallChartColumnStyle <- function(label = NULL, color = NULL) {
    structure(list(label = label, color = color), class = "gar_WaterfallChartColumnStyle")
}

#' ConditionalFormatRule Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A rule describing a conditional format.
#' 
#' @param ranges The ranges that are formatted if the condition is true
#' @param gradientRule The formatting will vary based on the gradients in the rule
#' @param booleanRule The formatting is either 'on' or 'off' according to the rule
#' 
#' @return ConditionalFormatRule object
#' 
#' @family ConditionalFormatRule functions
#' @export
ConditionalFormatRule <- function(ranges = NULL, gradientRule = NULL, booleanRule = NULL) {
    structure(list(ranges = ranges, gradientRule = gradientRule, booleanRule = booleanRule), 
        class = "gar_ConditionalFormatRule")
}

#' CopyPasteRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Copies data from the source to the destination.
#' 
#' @param source The source range to copy
#' @param pasteType What kind of data to paste
#' @param destination The location to paste to
#' @param pasteOrientation How that data should be oriented when pasting
#' 
#' @return CopyPasteRequest object
#' 
#' @family CopyPasteRequest functions
#' @export
CopyPasteRequest <- function(source = NULL, pasteType = NULL, destination = NULL, 
    pasteOrientation = NULL) {
    structure(list(source = source, pasteType = pasteType, destination = destination, 
        pasteOrientation = pasteOrientation), class = "gar_CopyPasteRequest")
}

#' Request Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A single kind of update to apply to a spreadsheet.
#' 
#' @param addConditionalFormatRule Adds a new conditional format rule
#' @param addNamedRange Adds a named range
#' @param updateCells Updates many cells at once
#' @param updateSpreadsheetProperties Updates the spreadsheet's properties
#' @param deleteEmbeddedObject Deletes an embedded object (e
#' @param updateFilterView Updates the properties of a filter view
#' @param addBanding Adds a new banded range
#' @param autoResizeDimensions Automatically resizes one or more dimensions based on the contents
#' @param appendCells Appends cells after the last row with data in a sheet
#' @param cutPaste Cuts data from one area and pastes it to another
#' @param mergeCells Merges cells together
#' @param updateNamedRange Updates a named range
#' @param updateSheetProperties Updates a sheet's properties
#' @param autoFill Automatically fills in more data based on existing data
#' @param deleteDimension Deletes rows or columns in a sheet
#' @param sortRange Sorts data in a range
#' @param deleteDimensionGroup Deletes a group over the specified range
#' @param deleteProtectedRange Deletes a protected range
#' @param duplicateFilterView Duplicates a filter view
#' @param addChart Adds a chart
#' @param findReplace Finds and replaces occurrences of some text with other text
#' @param updateChartSpec Updates a chart's specifications
#' @param textToColumns Converts a column of text into many columns of text
#' @param updateProtectedRange Updates a protected range
#' @param addSheet Adds a sheet
#' @param copyPaste Copies data from one area and pastes it to another
#' @param deleteFilterView Deletes a filter view from a sheet
#' @param insertDimension Inserts new rows or columns in a sheet
#' @param deleteRange Deletes a range of cells from a sheet, shifting the remaining cells
#' @param deleteBanding Removes a banded range
#' @param addFilterView Adds a filter view
#' @param setDataValidation Sets data validation for one or more cells
#' @param updateBorders Updates the borders in a range of cells
#' @param deleteConditionalFormatRule Deletes an existing conditional format rule
#' @param clearBasicFilter Clears the basic filter on a sheet
#' @param repeatCell Repeats a single cell across a range
#' @param appendDimension Appends dimensions to the end of a sheet
#' @param createDeveloperMetadata Creates new developer metadata
#' @param updateConditionalFormatRule Updates an existing conditional format rule
#' @param insertRange Inserts new cells in a sheet, shifting the existing cells
#' @param deleteDeveloperMetadata Deletes developer metadata
#' @param moveDimension Moves rows or columns to another location in a sheet
#' @param randomizeRange Randomizes the order of the rows in a range
#' @param updateBanding Updates a banded range
#' @param deleteNamedRange Deletes a named range
#' @param addProtectedRange Adds a protected range
#' @param duplicateSheet Duplicates a sheet
#' @param unmergeCells Unmerges merged cells
#' @param deleteSheet Deletes a sheet
#' @param updateEmbeddedObjectPosition Updates an embedded object's (e
#' @param addDimensionGroup Creates a group over the specified range
#' @param updateDeveloperMetadata Updates an existing developer metadata entry
#' @param updateDimensionProperties Updates dimensions' properties
#' @param updateDimensionGroup Updates the state of the specified group
#' @param pasteData Pastes data (HTML or delimited) into a sheet
#' @param setBasicFilter Sets the basic filter on a sheet
#' 
#' @return Request object
#' 
#' @family Request functions
#' @export
Request <- function(addConditionalFormatRule = NULL, addNamedRange = NULL, updateCells = NULL, 
    updateSpreadsheetProperties = NULL, deleteEmbeddedObject = NULL, updateFilterView = NULL, 
    addBanding = NULL, autoResizeDimensions = NULL, appendCells = NULL, cutPaste = NULL, 
    mergeCells = NULL, updateNamedRange = NULL, updateSheetProperties = NULL, autoFill = NULL, 
    deleteDimension = NULL, sortRange = NULL, deleteDimensionGroup = NULL, deleteProtectedRange = NULL, 
    duplicateFilterView = NULL, addChart = NULL, findReplace = NULL, updateChartSpec = NULL, 
    textToColumns = NULL, updateProtectedRange = NULL, addSheet = NULL, copyPaste = NULL, 
    deleteFilterView = NULL, insertDimension = NULL, deleteRange = NULL, deleteBanding = NULL, 
    addFilterView = NULL, setDataValidation = NULL, updateBorders = NULL, deleteConditionalFormatRule = NULL, 
    clearBasicFilter = NULL, repeatCell = NULL, appendDimension = NULL, createDeveloperMetadata = NULL, 
    updateConditionalFormatRule = NULL, insertRange = NULL, deleteDeveloperMetadata = NULL, 
    moveDimension = NULL, randomizeRange = NULL, updateBanding = NULL, deleteNamedRange = NULL, 
    addProtectedRange = NULL, duplicateSheet = NULL, unmergeCells = NULL, deleteSheet = NULL, 
    updateEmbeddedObjectPosition = NULL, addDimensionGroup = NULL, updateDeveloperMetadata = NULL, 
    updateDimensionProperties = NULL, updateDimensionGroup = NULL, pasteData = NULL, 
    setBasicFilter = NULL) {
    structure(list(addConditionalFormatRule = addConditionalFormatRule, addNamedRange = addNamedRange, 
        updateCells = updateCells, updateSpreadsheetProperties = updateSpreadsheetProperties, 
        deleteEmbeddedObject = deleteEmbeddedObject, updateFilterView = updateFilterView, 
        addBanding = addBanding, autoResizeDimensions = autoResizeDimensions, appendCells = appendCells, 
        cutPaste = cutPaste, mergeCells = mergeCells, updateNamedRange = updateNamedRange, 
        updateSheetProperties = updateSheetProperties, autoFill = autoFill, deleteDimension = deleteDimension, 
        sortRange = sortRange, deleteDimensionGroup = deleteDimensionGroup, deleteProtectedRange = deleteProtectedRange, 
        duplicateFilterView = duplicateFilterView, addChart = addChart, findReplace = findReplace, 
        updateChartSpec = updateChartSpec, textToColumns = textToColumns, updateProtectedRange = updateProtectedRange, 
        addSheet = addSheet, copyPaste = copyPaste, deleteFilterView = deleteFilterView, 
        insertDimension = insertDimension, deleteRange = deleteRange, deleteBanding = deleteBanding, 
        addFilterView = addFilterView, setDataValidation = setDataValidation, updateBorders = updateBorders, 
        deleteConditionalFormatRule = deleteConditionalFormatRule, clearBasicFilter = clearBasicFilter, 
        repeatCell = repeatCell, appendDimension = appendDimension, createDeveloperMetadata = createDeveloperMetadata, 
        updateConditionalFormatRule = updateConditionalFormatRule, insertRange = insertRange, 
        deleteDeveloperMetadata = deleteDeveloperMetadata, moveDimension = moveDimension, 
        randomizeRange = randomizeRange, updateBanding = updateBanding, deleteNamedRange = deleteNamedRange, 
        addProtectedRange = addProtectedRange, duplicateSheet = duplicateSheet, unmergeCells = unmergeCells, 
        deleteSheet = deleteSheet, updateEmbeddedObjectPosition = updateEmbeddedObjectPosition, 
        addDimensionGroup = addDimensionGroup, updateDeveloperMetadata = updateDeveloperMetadata, 
        updateDimensionProperties = updateDimensionProperties, updateDimensionGroup = updateDimensionGroup, 
        pasteData = pasteData, setBasicFilter = setBasicFilter), class = "gar_Request")
}

#' BooleanCondition Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A condition that can evaluate to true or false.BooleanConditions are used by conditional formatting,data validation, and the criteria in filters.
#' 
#' @param type The type of condition
#' @param values The values of the condition
#' 
#' @return BooleanCondition object
#' 
#' @family BooleanCondition functions
#' @export
BooleanCondition <- function(type = NULL, values = NULL) {
    structure(list(type = type, values = values), class = "gar_BooleanCondition")
}

#' GridRange Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A range on a sheet.All indexes are zero-based.Indexes are half open, e.g the start index is inclusiveand the end index is exclusive -- [start_index, end_index).Missing indexes indicate the range is unbounded on that side.For example, if `'Sheet1'` is sheet ID 0, then:  `Sheet1!A1:A1 == sheet_id: 0,                  start_row_index: 0, end_row_index: 1,                  start_column_index: 0, end_column_index: 1`  `Sheet1!A3:B4 == sheet_id: 0,                  start_row_index: 2, end_row_index: 4,                  start_column_index: 0, end_column_index: 2`  `Sheet1!A:B == sheet_id: 0,                start_column_index: 0, end_column_index: 2`  `Sheet1!A5:B == sheet_id: 0,                 start_row_index: 4,                 start_column_index: 0, end_column_index: 2`  `Sheet1 == sheet_id:0`The start index must always be less than or equal to the end index.If the start index equals the end index, then the range is empty.Empty ranges are typically not meaningful and are usually rendered in theUI as `#REF!`.
#' 
#' @param endRowIndex The end row (exclusive) of the range, or not set if unbounded
#' @param endColumnIndex The end column (exclusive) of the range, or not set if unbounded
#' @param startRowIndex The start row (inclusive) of the range, or not set if unbounded
#' @param startColumnIndex The start column (inclusive) of the range, or not set if unbounded
#' @param sheetId The sheet this range is on
#' 
#' @return GridRange object
#' 
#' @family GridRange functions
#' @export
GridRange <- function(endRowIndex = NULL, endColumnIndex = NULL, startRowIndex = NULL, 
    startColumnIndex = NULL, sheetId = NULL) {
    structure(list(endRowIndex = endRowIndex, endColumnIndex = endColumnIndex, startRowIndex = startRowIndex, 
        startColumnIndex = startColumnIndex, sheetId = sheetId), class = "gar_GridRange")
}

#' WaterfallChartDomain Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The domain of a waterfall chart.
#' 
#' @param data The data of the WaterfallChartDomain
#' @param reversed True to reverse the order of the domain values (horizontal axis)
#' 
#' @return WaterfallChartDomain object
#' 
#' @family WaterfallChartDomain functions
#' @export
WaterfallChartDomain <- function(data = NULL, reversed = NULL) {
    structure(list(data = data, reversed = reversed), class = "gar_WaterfallChartDomain")
}

#' AddDimensionGroupRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Creates a group over the specified range.If the requested range is a superset of the range of an existing group G,then the depth of G is incremented and this new group G' has thedepth of that group. For example, a group [C:D, depth 1] + [B:E] results ingroups [B:E, depth 1] and [C:D, depth 2].If the requested range is a subset of the range of an existing group G,then the depth of the new group G' becomes one greater than the depth of G.For example, a group [B:E, depth 1] + [C:D] results in groups [B:E, depth 1]and [C:D, depth 2].If the requested range starts before and ends within, or starts within andends after, the range of an existing group G, then the range of the existinggroup G becomes the union of the ranges, and the new group G' hasdepth one greater than the depth of G and range as the intersection of theranges. For example, a group [B:D, depth 1] + [C:E] results in groups [B:E,depth 1] and [C:D, depth 2].
#' 
#' @param range The range over which to create a group
#' 
#' @return AddDimensionGroupRequest object
#' 
#' @family AddDimensionGroupRequest functions
#' @export
AddDimensionGroupRequest <- function(range = NULL) {
    structure(list(range = range), class = "gar_AddDimensionGroupRequest")
}

#' BasicChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The specification for a basic chart.  See BasicChartType for the listof charts this supports.
#' 
#' @param threeDimensional True to make the chart 3D
#' @param axis The axis on the chart
#' @param chartType The type of the chart
#' @param interpolateNulls If some values in a series are missing, gaps may appear in the chart (e
#' @param series The data this chart is visualizing
#' @param legendPosition The position of the chart legend
#' @param compareMode The behavior of tooltips and data highlighting when hovering on data and
#' @param domains The domain of data this is charting
#' @param lineSmoothing Gets whether all lines should be rendered smooth or straight by default
#' @param headerCount The number of rows or columns in the data that are 'headers'
#' @param stackedType The stacked type for charts that support vertical stacking
#' 
#' @return BasicChartSpec object
#' 
#' @family BasicChartSpec functions
#' @export
BasicChartSpec <- function(threeDimensional = NULL, axis = NULL, chartType = NULL, 
    interpolateNulls = NULL, series = NULL, legendPosition = NULL, compareMode = NULL, 
    domains = NULL, lineSmoothing = NULL, headerCount = NULL, stackedType = NULL) {
    structure(list(threeDimensional = threeDimensional, axis = axis, chartType = chartType, 
        interpolateNulls = interpolateNulls, series = series, legendPosition = legendPosition, 
        compareMode = compareMode, domains = domains, lineSmoothing = lineSmoothing, 
        headerCount = headerCount, stackedType = stackedType), class = "gar_BasicChartSpec")
}

#' DeleteDimensionGroupRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Deletes a group over the specified range by decrementing the depth of thedimensions in the range.For example, assume the sheet has a depth-1 group over B:E and a depth-2group over C:D. Deleting a group over D:E leaves the sheet with adepth-1 group over B:D and a depth-2 group over C:C.
#' 
#' @param range The range of the group to be deleted
#' 
#' @return DeleteDimensionGroupRequest object
#' 
#' @family DeleteDimensionGroupRequest functions
#' @export
DeleteDimensionGroupRequest <- function(range = NULL) {
    structure(list(range = range), class = "gar_DeleteDimensionGroupRequest")
}

#' SetDataValidationRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Sets a data validation rule to every cell in the range.To clear validation in a range, call this with no rule specified.
#' 
#' @param rule The data validation rule to set on each cell in the range,
#' @param range The range the data validation rule should apply to
#' 
#' @return SetDataValidationRequest object
#' 
#' @family SetDataValidationRequest functions
#' @export
SetDataValidationRequest <- function(rule = NULL, range = NULL) {
    structure(list(rule = rule, range = range), class = "gar_SetDataValidationRequest")
}

#' BubbleChartSpec Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A <a href='/chart/interactive/docs/gallery/bubblechart'>bubble chart</a>.
#' 
#' @param legendPosition Where the legend of the chart should be drawn
#' @param bubbleOpacity The opacity of the bubbles between 0 and 1
#' @param bubbleSizes The data contianing the bubble sizes
#' @param domain The data containing the bubble x-values
#' @param bubbleBorderColor The bubble border color
#' @param bubbleTextStyle The format of the text inside the bubbles
#' @param groupIds The data containing the bubble group IDs
#' @param bubbleLabels The data containing the bubble labels
#' @param bubbleMinRadiusSize The minimum radius size of the bubbles, in pixels
#' @param bubbleMaxRadiusSize The max radius size of the bubbles, in pixels
#' @param series The data contianing the bubble y-values
#' 
#' @return BubbleChartSpec object
#' 
#' @family BubbleChartSpec functions
#' @export
BubbleChartSpec <- function(legendPosition = NULL, bubbleOpacity = NULL, bubbleSizes = NULL, 
    domain = NULL, bubbleBorderColor = NULL, bubbleTextStyle = NULL, groupIds = NULL, 
    bubbleLabels = NULL, bubbleMinRadiusSize = NULL, bubbleMaxRadiusSize = NULL, 
    series = NULL) {
    structure(list(legendPosition = legendPosition, bubbleOpacity = bubbleOpacity, 
        bubbleSizes = bubbleSizes, domain = domain, bubbleBorderColor = bubbleBorderColor, 
        bubbleTextStyle = bubbleTextStyle, groupIds = groupIds, bubbleLabels = bubbleLabels, 
        bubbleMinRadiusSize = bubbleMinRadiusSize, bubbleMaxRadiusSize = bubbleMaxRadiusSize, 
        series = series), class = "gar_BubbleChartSpec")
}

#' CellData Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Data about a specific cell.
#' 
#' @param textFormatRuns Runs of rich text applied to subsections of the cell
#' @param formattedValue The formatted value of the cell
#' @param hyperlink A hyperlink this cell points to, if any
#' @param pivotTable A pivot table anchored at this cell
#' @param userEnteredFormat The format the user entered for the cell
#' @param effectiveFormat The effective format being used by the cell
#' @param note Any note on the cell
#' @param dataValidation A data validation rule on the cell, if any
#' @param userEnteredValue The value the user entered in the cell
#' @param effectiveValue The effective value of the cell
#' 
#' @return CellData object
#' 
#' @family CellData functions
#' @export
CellData <- function(textFormatRuns = NULL, formattedValue = NULL, hyperlink = NULL, 
    pivotTable = NULL, userEnteredFormat = NULL, effectiveFormat = NULL, note = NULL, 
    dataValidation = NULL, userEnteredValue = NULL, effectiveValue = NULL) {
    structure(list(textFormatRuns = textFormatRuns, formattedValue = formattedValue, 
        hyperlink = hyperlink, pivotTable = pivotTable, userEnteredFormat = userEnteredFormat, 
        effectiveFormat = effectiveFormat, note = note, dataValidation = dataValidation, 
        userEnteredValue = userEnteredValue, effectiveValue = effectiveValue), class = "gar_CellData")
}

#' BatchUpdateValuesByDataFilterRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request for updating more than one range of values in a spreadsheet.
#' 
#' @param valueInputOption How the input data should be interpreted
#' @param data The new values to apply to the spreadsheet
#' @param responseDateTimeRenderOption Determines how dates, times, and durations in the response should be
#' @param responseValueRenderOption Determines how values in the response should be rendered
#' @param includeValuesInResponse Determines if the update response should include the values
#' 
#' @return BatchUpdateValuesByDataFilterRequest object
#' 
#' @family BatchUpdateValuesByDataFilterRequest functions
#' @export
BatchUpdateValuesByDataFilterRequest <- function(valueInputOption = NULL, data = NULL, 
    responseDateTimeRenderOption = NULL, responseValueRenderOption = NULL, includeValuesInResponse = NULL) {
    structure(list(valueInputOption = valueInputOption, data = data, responseDateTimeRenderOption = responseDateTimeRenderOption, 
        responseValueRenderOption = responseValueRenderOption, includeValuesInResponse = includeValuesInResponse), 
        class = "gar_BatchUpdateValuesByDataFilterRequest")
}

#' TextPosition Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Position settings for text.
#' 
#' @param horizontalAlignment Horizontal alignment setting for the piece of text
#' 
#' @return TextPosition object
#' 
#' @family TextPosition functions
#' @export
TextPosition <- function(horizontalAlignment = NULL) {
    structure(list(horizontalAlignment = horizontalAlignment), class = "gar_TextPosition")
}

#' BatchUpdateSpreadsheetRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request for updating any aspect of a spreadsheet.
#' 
#' @param includeSpreadsheetInResponse Determines if the update response should include the spreadsheet
#' @param responseRanges Limits the ranges included in the response spreadsheet
#' @param responseIncludeGridData True if grid data should be returned
#' @param requests A list of updates to apply to the spreadsheet
#' 
#' @return BatchUpdateSpreadsheetRequest object
#' 
#' @family BatchUpdateSpreadsheetRequest functions
#' @export
BatchUpdateSpreadsheetRequest <- function(includeSpreadsheetInResponse = NULL, responseRanges = NULL, 
    responseIncludeGridData = NULL, requests = NULL) {
    structure(list(includeSpreadsheetInResponse = includeSpreadsheetInResponse, responseRanges = responseRanges, 
        responseIncludeGridData = responseIncludeGridData, requests = requests), 
        class = "gar_BatchUpdateSpreadsheetRequest")
}

#' Padding Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The amount of padding around the cell, in pixels.When updating padding, every field must be specified.
#' 
#' @param right The right padding of the cell
#' @param bottom The bottom padding of the cell
#' @param top The top padding of the cell
#' @param left The left padding of the cell
#' 
#' @return Padding object
#' 
#' @family Padding functions
#' @export
Padding <- function(right = NULL, bottom = NULL, top = NULL, left = NULL) {
    structure(list(right = right, bottom = bottom, top = top, left = left), class = "gar_Padding")
}

#' BasicChartAxis Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' An axis of the chart.A chart may not have more than one axis peraxis position.
#' 
#' @param position The position of this axis
#' @param title The title of this axis
#' @param titleTextPosition The axis title text position
#' @param format The format of the title
#' 
#' @return BasicChartAxis object
#' 
#' @family BasicChartAxis functions
#' @export
BasicChartAxis <- function(position = NULL, title = NULL, titleTextPosition = NULL, 
    format = NULL) {
    structure(list(position = position, title = title, titleTextPosition = titleTextPosition, 
        format = format), class = "gar_BasicChartAxis")
}

#' DeleteDimensionRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Deletes the dimensions from the sheet.
#' 
#' @param range The dimensions to delete from the sheet
#' 
#' @return DeleteDimensionRequest object
#' 
#' @family DeleteDimensionRequest functions
#' @export
DeleteDimensionRequest <- function(range = NULL) {
    structure(list(range = range), class = "gar_DeleteDimensionRequest")
}

#' UpdateChartSpecRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates a chart's specifications.(This does not move or resize a chart. To move or resize a chart, use UpdateEmbeddedObjectPositionRequest.)
#' 
#' @param chartId The ID of the chart to update
#' @param spec The specification to apply to the chart
#' 
#' @return UpdateChartSpecRequest object
#' 
#' @family UpdateChartSpecRequest functions
#' @export
UpdateChartSpecRequest <- function(chartId = NULL, spec = NULL) {
    structure(list(chartId = chartId, spec = spec), class = "gar_UpdateChartSpecRequest")
}

#' DeleteFilterViewRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Deletes a particular filter view.
#' 
#' @param filterId The ID of the filter to delete
#' 
#' @return DeleteFilterViewRequest object
#' 
#' @family DeleteFilterViewRequest functions
#' @export
DeleteFilterViewRequest <- function(filterId = NULL) {
    structure(list(filterId = filterId), class = "gar_DeleteFilterViewRequest")
}

#' UpdateDimensionGroupRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Updates the state of the specified group.
#' 
#' @param dimensionGroup The group whose state should be updated
#' @param fields The fields that should be updated
#' 
#' @return UpdateDimensionGroupRequest object
#' 
#' @family UpdateDimensionGroupRequest functions
#' @export
UpdateDimensionGroupRequest <- function(dimensionGroup = NULL, fields = NULL) {
    structure(list(dimensionGroup = dimensionGroup, fields = fields), class = "gar_UpdateDimensionGroupRequest")
}

#' BatchGetValuesByDataFilterRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request for retrieving a range of values in a spreadsheet selected by aset of DataFilters.
#' 
#' @param valueRenderOption How values should be represented in the output
#' @param dateTimeRenderOption How dates, times, and durations should be represented in the output
#' @param majorDimension The major dimension that results should use
#' @param dataFilters The data filters used to match the ranges of values to retrieve
#' 
#' @return BatchGetValuesByDataFilterRequest object
#' 
#' @family BatchGetValuesByDataFilterRequest functions
#' @export
BatchGetValuesByDataFilterRequest <- function(valueRenderOption = NULL, dateTimeRenderOption = NULL, 
    majorDimension = NULL, dataFilters = NULL) {
    structure(list(valueRenderOption = valueRenderOption, dateTimeRenderOption = dateTimeRenderOption, 
        majorDimension = majorDimension, dataFilters = dataFilters), class = "gar_BatchGetValuesByDataFilterRequest")
}

#' DeleteDeveloperMetadataResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response from deleting developer metadata.
#' 
#' @param deletedDeveloperMetadata The metadata that was deleted
#' 
#' @return DeleteDeveloperMetadataResponse object
#' 
#' @family DeleteDeveloperMetadataResponse functions
#' @export
DeleteDeveloperMetadataResponse <- function(deletedDeveloperMetadata = NULL) {
    structure(list(deletedDeveloperMetadata = deletedDeveloperMetadata), class = "gar_DeleteDeveloperMetadataResponse")
}

#' BatchUpdateValuesResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when updating a range of values in a spreadsheet.
#' 
#' @param totalUpdatedRows The total number of rows where at least one cell in the row was updated
#' @param responses One UpdateValuesResponse per requested range, in the same order as
#' @param totalUpdatedSheets The total number of sheets where at least one cell in the sheet was
#' @param totalUpdatedCells The total number of cells updated
#' @param totalUpdatedColumns The total number of columns where at least one cell in the column was
#' @param spreadsheetId The spreadsheet the updates were applied to
#' 
#' @return BatchUpdateValuesResponse object
#' 
#' @family BatchUpdateValuesResponse functions
#' @export
BatchUpdateValuesResponse <- function(totalUpdatedRows = NULL, responses = NULL, 
    totalUpdatedSheets = NULL, totalUpdatedCells = NULL, totalUpdatedColumns = NULL, 
    spreadsheetId = NULL) {
    structure(list(totalUpdatedRows = totalUpdatedRows, responses = responses, totalUpdatedSheets = totalUpdatedSheets, 
        totalUpdatedCells = totalUpdatedCells, totalUpdatedColumns = totalUpdatedColumns, 
        spreadsheetId = spreadsheetId), class = "gar_BatchUpdateValuesResponse")
}

#' SortRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Sorts data in rows based on a sort order per column.
#' 
#' @param range The range to sort
#' @param sortSpecs The sort order per column
#' 
#' @return SortRangeRequest object
#' 
#' @family SortRangeRequest functions
#' @export
SortRangeRequest <- function(range = NULL, sortSpecs = NULL) {
    structure(list(range = range, sortSpecs = sortSpecs), class = "gar_SortRangeRequest")
}

#' MatchedDeveloperMetadata Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A developer metadata entry and the data filters specified in the originalrequest that matched it.
#' 
#' @param developerMetadata The developer metadata matching the specified filters
#' @param dataFilters All filters matching the returned developer metadata
#' 
#' @return MatchedDeveloperMetadata object
#' 
#' @family MatchedDeveloperMetadata functions
#' @export
MatchedDeveloperMetadata <- function(developerMetadata = NULL, dataFilters = NULL) {
    structure(list(developerMetadata = developerMetadata, dataFilters = dataFilters), 
        class = "gar_MatchedDeveloperMetadata")
}

#' MergeCellsRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Merges all cells in the range.
#' 
#' @param mergeType How the cells should be merged
#' @param range The range of cells to merge
#' 
#' @return MergeCellsRequest object
#' 
#' @family MergeCellsRequest functions
#' @export
MergeCellsRequest <- function(mergeType = NULL, range = NULL) {
    structure(list(mergeType = mergeType, range = range), class = "gar_MergeCellsRequest")
}

#' AddProtectedRangeRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Adds a new protected range.
#' 
#' @param protectedRange The protected range to be added
#' 
#' @return AddProtectedRangeRequest object
#' 
#' @family AddProtectedRangeRequest functions
#' @export
AddProtectedRangeRequest <- function(protectedRange = NULL) {
    structure(list(protectedRange = protectedRange), class = "gar_AddProtectedRangeRequest")
}

#' BatchClearValuesRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The request for clearing more than one range of values in a spreadsheet.
#' 
#' @param ranges The ranges to clear, in A1 notation
#' 
#' @return BatchClearValuesRequest object
#' 
#' @family BatchClearValuesRequest functions
#' @export
BatchClearValuesRequest <- function(ranges = NULL) {
    structure(list(ranges = ranges), class = "gar_BatchClearValuesRequest")
}

#' DeveloperMetadata Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Developer metadata associated with a location or object in a spreadsheet.Developer metadata may be used to associate arbitrary data with variousparts of a spreadsheet and will remain associated at those locations as theymove around and the spreadsheet is edited.  For example, if developermetadata is associated with row 5 and another row is then subsequentlyinserted above row 5, that original metadata will still be associated withthe row it was first associated with (what is now row 6). If the associatedobject is deleted its metadata is deleted too.
#' 
#' @param metadataValue Data associated with the metadata's key
#' @param metadataKey The metadata key
#' @param metadataId The spreadsheet-scoped unique ID that identifies the metadata
#' @param location The location where the metadata is associated
#' @param visibility The metadata visibility
#' 
#' @return DeveloperMetadata object
#' 
#' @family DeveloperMetadata functions
#' @export
DeveloperMetadata <- function(metadataValue = NULL, metadataKey = NULL, metadataId = NULL, 
    location = NULL, visibility = NULL) {
    structure(list(metadataValue = metadataValue, metadataKey = metadataKey, metadataId = metadataId, 
        location = location, visibility = visibility), class = "gar_DeveloperMetadata")
}

#' DuplicateFilterViewResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of a filter view being duplicated.
#' 
#' @param filter The newly created filter
#' 
#' @return DuplicateFilterViewResponse object
#' 
#' @family DuplicateFilterViewResponse functions
#' @export
DuplicateFilterViewResponse <- function(filter = NULL) {
    structure(list(filter = filter), class = "gar_DuplicateFilterViewResponse")
}

#' DuplicateSheetResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The result of duplicating a sheet.
#' 
#' @param properties The properties of the duplicate sheet
#' 
#' @return DuplicateSheetResponse object
#' 
#' @family DuplicateSheetResponse functions
#' @export
DuplicateSheetResponse <- function(properties = NULL) {
    structure(list(properties = properties), class = "gar_DuplicateSheetResponse")
}

#' DimensionGroup Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' A group over an interval of rows or columns on a sheet, which can contain orbe contained within other groups. A group can be collapsed or expanded as aunit on the sheet.
#' 
#' @param collapsed This field is true if this group is collapsed
#' @param range The range over which this group exists
#' @param depth The depth of the group, representing how many groups have a range that
#' 
#' @return DimensionGroup object
#' 
#' @family DimensionGroup functions
#' @export
DimensionGroup <- function(collapsed = NULL, range = NULL, depth = NULL) {
    structure(list(collapsed = collapsed, range = range, depth = depth), class = "gar_DimensionGroup")
}

#' ClearBasicFilterRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Clears the basic filter, if any exists on the sheet.
#' 
#' @param sheetId The sheet ID on which the basic filter should be cleared
#' 
#' @return ClearBasicFilterRequest object
#' 
#' @family ClearBasicFilterRequest functions
#' @export
ClearBasicFilterRequest <- function(sheetId = NULL) {
    structure(list(sheetId = sheetId), class = "gar_ClearBasicFilterRequest")
}

#' TextToColumnsRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Splits a column of text into multiple columns,based on a delimiter in each cell.
#' 
#' @param delimiter The delimiter to use
#' @param source The source data range
#' @param delimiterType The delimiter type to use
#' 
#' @return TextToColumnsRequest object
#' 
#' @family TextToColumnsRequest functions
#' @export
TextToColumnsRequest <- function(delimiter = NULL, source = NULL, delimiterType = NULL) {
    structure(list(delimiter = delimiter, source = source, delimiterType = delimiterType), 
        class = "gar_TextToColumnsRequest")
}

#' DeleteBandingRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Removes the banded range with the given ID from the spreadsheet.
#' 
#' @param bandedRangeId The ID of the banded range to delete
#' 
#' @return DeleteBandingRequest object
#' 
#' @family DeleteBandingRequest functions
#' @export
DeleteBandingRequest <- function(bandedRangeId = NULL) {
    structure(list(bandedRangeId = bandedRangeId), class = "gar_DeleteBandingRequest")
}

#' BatchUpdateSpreadsheetResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The reply for batch updating a spreadsheet.
#' 
#' @param replies The reply of the updates
#' @param updatedSpreadsheet The spreadsheet after updates were applied
#' @param spreadsheetId The spreadsheet the updates were applied to
#' 
#' @return BatchUpdateSpreadsheetResponse object
#' 
#' @family BatchUpdateSpreadsheetResponse functions
#' @export
BatchUpdateSpreadsheetResponse <- function(replies = NULL, updatedSpreadsheet = NULL, 
    spreadsheetId = NULL) {
    structure(list(replies = replies, updatedSpreadsheet = updatedSpreadsheet, spreadsheetId = spreadsheetId), 
        class = "gar_BatchUpdateSpreadsheetResponse")
}

#' AppendValuesResponse Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' The response when updating a range of values in a spreadsheet.
#' 
#' @param spreadsheetId The spreadsheet the updates were applied to
#' @param updates Information about the updates that were applied
#' @param tableRange The range (in A1 notation) of the table that values are being appended to
#' 
#' @return AppendValuesResponse object
#' 
#' @family AppendValuesResponse functions
#' @export
AppendValuesResponse <- function(spreadsheetId = NULL, updates = NULL, tableRange = NULL) {
    structure(list(spreadsheetId = spreadsheetId, updates = updates, tableRange = tableRange), 
        class = "gar_AppendValuesResponse")
}

#' PivotFilterCriteria Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Criteria for showing/hiding rows in a pivot table.
#' 
#' @param visibleValues Values that should be included
#' 
#' @return PivotFilterCriteria object
#' 
#' @family PivotFilterCriteria functions
#' @export
PivotFilterCriteria <- function(visibleValues = NULL) {
    structure(list(visibleValues = visibleValues), class = "gar_PivotFilterCriteria")
}

#' AddFilterViewRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Adds a filter view.
#' 
#' @param filter The filter to add
#' 
#' @return AddFilterViewRequest object
#' 
#' @family AddFilterViewRequest functions
#' @export
AddFilterViewRequest <- function(filter = NULL) {
    structure(list(filter = filter), class = "gar_AddFilterViewRequest")
}

#' MoveDimensionRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Moves one or more rows or columns.
#' 
#' @param destinationIndex The zero-based start index of where to move the source data to,
#' @param source The source dimensions to move
#' 
#' @return MoveDimensionRequest object
#' 
#' @family MoveDimensionRequest functions
#' @export
MoveDimensionRequest <- function(destinationIndex = NULL, source = NULL) {
    structure(list(destinationIndex = destinationIndex, source = source), class = "gar_MoveDimensionRequest")
}


#' AddConditionalFormatRuleRequest Object
#' 
#' @details 
#' Autogenerated via \code{\link[googleAuthR]{gar_create_api_objects}}
#' Adds a new conditional format rule at the given index.All subsequent rules' indexes are incremented.
#' 
#' @param rule The rule to add
#' @param index The zero-based index where the rule should be inserted
#' 
#' @return AddConditionalFormatRuleRequest object
#' 
#' @family AddConditionalFormatRuleRequest functions
#' @export


AddConditionalFormatRuleRequest <- function(rule = NULL, index = NULL) {
    
    
    
    structure(list(rule = rule, index = index), class = "gar_AddConditionalFormatRuleRequest")
}
lantanacamara/googleSheetsR documentation built on May 3, 2019, 11:52 p.m.