sig
  module Scope :
    sig
      val bigquery : string
      val bigquery_insertdata : string
      val cloud_platform : string
      val cloud_platform_read_only : string
      val devstorage_full_control : string
      val devstorage_read_only : string
      val devstorage_read_write : string
    end
  module DatasetsResource :
    sig
      val delete :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        ?deleteContents:bool ->
        projectId:string ->
        datasetId:string ->
        GapiConversation.Session.t -> unit * GapiConversation.Session.t
      val get :
        ?base_url:string ->
        ?etag:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Dataset.t * GapiConversation.Session.t
      val insert :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        GapiBigqueryV2Model.Dataset.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Dataset.t * GapiConversation.Session.t
      val list :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        ?all:bool ->
        ?maxResults:int ->
        ?pageToken:string ->
        projectId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.DatasetList.t * GapiConversation.Session.t
      val patch :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        GapiBigqueryV2Model.Dataset.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Dataset.t * GapiConversation.Session.t
      val update :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        GapiBigqueryV2Model.Dataset.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Dataset.t * GapiConversation.Session.t
    end
  module JobsResource :
    sig
      module StateFilter :
        sig
          type t = Default | Done | Pending | Running
          val to_string :
            GapiBigqueryV2Service.JobsResource.StateFilter.t -> string
          val of_string :
            string -> GapiBigqueryV2Service.JobsResource.StateFilter.t
        end
      module Projection :
        sig
          type t = Default | Full | Minimal
          val to_string :
            GapiBigqueryV2Service.JobsResource.Projection.t -> string
          val of_string :
            string -> GapiBigqueryV2Service.JobsResource.Projection.t
        end
      val cancel :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        jobId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.JobCancelResponse.t * GapiConversation.Session.t
      val get :
        ?base_url:string ->
        ?etag:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        jobId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Job.t * GapiConversation.Session.t
      val getQueryResults :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        ?maxResults:int ->
        ?pageToken:string ->
        ?startIndex:string ->
        ?timeoutMs:int ->
        projectId:string ->
        jobId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.GetQueryResultsResponse.t *
        GapiConversation.Session.t
      val insert :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        ?media_source:GapiMediaResource.t ->
        projectId:string ->
        GapiBigqueryV2Model.Job.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Job.t * GapiConversation.Session.t
      val list :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        ?allUsers:bool ->
        ?maxResults:int ->
        ?pageToken:string ->
        ?projection:GapiBigqueryV2Service.JobsResource.Projection.t ->
        ?stateFilter:GapiBigqueryV2Service.JobsResource.StateFilter.t list ->
        projectId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.JobList.t * GapiConversation.Session.t
      val query :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        GapiBigqueryV2Model.QueryRequest.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.QueryResponse.t * GapiConversation.Session.t
    end
  module ProjectsResource :
    sig
      val list :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        ?maxResults:int ->
        ?pageToken:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.ProjectList.t * GapiConversation.Session.t
    end
  module TabledataResource :
    sig
      val insertAll :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        tableId:string ->
        GapiBigqueryV2Model.TableDataInsertAllRequest.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.TableDataInsertAllResponse.t *
        GapiConversation.Session.t
      val list :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        ?maxResults:int ->
        ?pageToken:string ->
        ?startIndex:string ->
        projectId:string ->
        datasetId:string ->
        tableId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.TableDataList.t * GapiConversation.Session.t
    end
  module TablesResource :
    sig
      val delete :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        tableId:string ->
        GapiConversation.Session.t -> unit * GapiConversation.Session.t
      val get :
        ?base_url:string ->
        ?etag:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        tableId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Table.t * GapiConversation.Session.t
      val insert :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        GapiBigqueryV2Model.Table.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Table.t * GapiConversation.Session.t
      val list :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        ?maxResults:int ->
        ?pageToken:string ->
        projectId:string ->
        datasetId:string ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.TableList.t * GapiConversation.Session.t
      val patch :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        tableId:string ->
        GapiBigqueryV2Model.Table.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Table.t * GapiConversation.Session.t
      val update :
        ?base_url:string ->
        ?std_params:GapiService.StandardParameters.t ->
        projectId:string ->
        datasetId:string ->
        tableId:string ->
        GapiBigqueryV2Model.Table.t ->
        GapiConversation.Session.t ->
        GapiBigqueryV2Model.Table.t * GapiConversation.Session.t
    end
end