@googleapis/biglake 4.1.1 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/v1.ts CHANGED
@@ -100,9 +100,9 @@ export namespace biglake_v1 {
100
100
  }
101
101
 
102
102
  /**
103
- * BigLake API
103
+ * Lakehouse API
104
104
  *
105
- * The BigLake API provides access to BigLake Metastore, a serverless, fully managed, and highly available metastore for open-source data that can be used for querying Apache Iceberg tables in BigQuery.
105
+ * The Lakehouse API (formerly BigLake API) provides access to a serverless, fully managed, and highly available metastore that provides a single source of truth for your data lakehouse. It lets multiple engines—including Apache Spark, Google Managed Spark, Apache Flink, Trino and BigQuery—share tables and metadata for key open formats (Apache Iceberg, Apache Hive), and query the same copy of data. Plus, through the Lakehouse runtime catalog federation seamlessly unite your lakehouse ecosystem, letting Iceberg compatible engines on Google Cloud (BigQuery, Google Managed Spark) discover and analyze enterprise data across Snowflake, Databricks, and AWS Glue.
106
106
  *
107
107
  * @example
108
108
  * ```js
@@ -425,6 +425,24 @@ export namespace biglake_v1 {
425
425
  */
426
426
  updateTime?: string | null;
427
427
  }
428
+ /**
429
+ * Request message for `TestIamPermissions` method.
430
+ */
431
+ export interface Schema$TestIamPermissionsRequest {
432
+ /**
433
+ * The set of permissions to check for the `resource`. Permissions with wildcards (such as `*` or `storage.*`) are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
434
+ */
435
+ permissions?: string[] | null;
436
+ }
437
+ /**
438
+ * Response message for `TestIamPermissions` method.
439
+ */
440
+ export interface Schema$TestIamPermissionsResponse {
441
+ /**
442
+ * A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
443
+ */
444
+ permissions?: string[] | null;
445
+ }
428
446
 
429
447
  export class Resource$Projects {
430
448
  context: APIRequestContext;
@@ -520,19 +538,661 @@ export namespace biglake_v1 {
520
538
  options: StreamMethodOptions | BodyResponseCallback<Readable>,
521
539
  callback: BodyResponseCallback<Readable>
522
540
  ): void;
523
- getIamPolicy(
524
- params: Params$Resource$Projects$Catalogs$Getiampolicy,
541
+ getIamPolicy(
542
+ params: Params$Resource$Projects$Catalogs$Getiampolicy,
543
+ options: MethodOptions | BodyResponseCallback<Schema$Policy>,
544
+ callback: BodyResponseCallback<Schema$Policy>
545
+ ): void;
546
+ getIamPolicy(
547
+ params: Params$Resource$Projects$Catalogs$Getiampolicy,
548
+ callback: BodyResponseCallback<Schema$Policy>
549
+ ): void;
550
+ getIamPolicy(callback: BodyResponseCallback<Schema$Policy>): void;
551
+ getIamPolicy(
552
+ paramsOrCallback?:
553
+ | Params$Resource$Projects$Catalogs$Getiampolicy
554
+ | BodyResponseCallback<Schema$Policy>
555
+ | BodyResponseCallback<Readable>,
556
+ optionsOrCallback?:
557
+ | MethodOptions
558
+ | StreamMethodOptions
559
+ | BodyResponseCallback<Schema$Policy>
560
+ | BodyResponseCallback<Readable>,
561
+ callback?:
562
+ BodyResponseCallback<Schema$Policy> | BodyResponseCallback<Readable>
563
+ ):
564
+ | void
565
+ | Promise<GaxiosResponseWithHTTP2<Schema$Policy>>
566
+ | Promise<GaxiosResponseWithHTTP2<Readable>> {
567
+ let params = (paramsOrCallback ||
568
+ {}) as Params$Resource$Projects$Catalogs$Getiampolicy;
569
+ let options = (optionsOrCallback || {}) as MethodOptions;
570
+
571
+ if (typeof paramsOrCallback === 'function') {
572
+ callback = paramsOrCallback;
573
+ params = {} as Params$Resource$Projects$Catalogs$Getiampolicy;
574
+ options = {};
575
+ }
576
+
577
+ if (typeof optionsOrCallback === 'function') {
578
+ callback = optionsOrCallback;
579
+ options = {};
580
+ }
581
+
582
+ const rootUrl = options.rootUrl || 'https://biglake.googleapis.com/';
583
+ const parameters = {
584
+ options: Object.assign(
585
+ {
586
+ url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace(
587
+ /([^:]\/)\/+/g,
588
+ '$1'
589
+ ),
590
+ method: 'GET',
591
+ apiVersion: '',
592
+ },
593
+ options
594
+ ),
595
+ params,
596
+ requiredParams: ['resource'],
597
+ pathParams: ['resource'],
598
+ context: this.context,
599
+ };
600
+ if (callback) {
601
+ createAPIRequest<Schema$Policy>(
602
+ parameters,
603
+ callback as BodyResponseCallback<unknown>
604
+ );
605
+ } else {
606
+ return createAPIRequest<Schema$Policy>(parameters);
607
+ }
608
+ }
609
+
610
+ /**
611
+ * Sets the IAM policy for the specified catalog.
612
+ * @example
613
+ * ```js
614
+ * // Before running the sample:
615
+ * // - Enable the API at:
616
+ * // https://console.developers.google.com/apis/api/biglake.googleapis.com
617
+ * // - Login into gcloud by running:
618
+ * // ```sh
619
+ * // $ gcloud auth application-default login
620
+ * // ```
621
+ * // - Install the npm module by running:
622
+ * // ```sh
623
+ * // $ npm install googleapis
624
+ * // ```
625
+ *
626
+ * const {google} = require('googleapis');
627
+ * const biglake = google.biglake('v1');
628
+ *
629
+ * async function main() {
630
+ * const auth = new google.auth.GoogleAuth({
631
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
632
+ * scopes: [
633
+ * 'https://www.googleapis.com/auth/bigquery',
634
+ * 'https://www.googleapis.com/auth/cloud-platform',
635
+ * ],
636
+ * });
637
+ *
638
+ * // Acquire an auth client, and bind it to all future calls
639
+ * const authClient = await auth.getClient();
640
+ * google.options({auth: authClient});
641
+ *
642
+ * // Do the magic
643
+ * const res = await biglake.projects.catalogs.setIamPolicy({
644
+ * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
645
+ * resource: 'projects/my-project/catalogs/my-catalog',
646
+ *
647
+ * // Request body metadata
648
+ * requestBody: {
649
+ * // request body parameters
650
+ * // {
651
+ * // "policy": {},
652
+ * // "updateMask": "my_updateMask"
653
+ * // }
654
+ * },
655
+ * });
656
+ * console.log(res.data);
657
+ *
658
+ * // Example response
659
+ * // {
660
+ * // "auditConfigs": [],
661
+ * // "bindings": [],
662
+ * // "etag": "my_etag",
663
+ * // "version": 0
664
+ * // }
665
+ * }
666
+ *
667
+ * main().catch(e => {
668
+ * console.error(e);
669
+ * throw e;
670
+ * });
671
+ *
672
+ * ```
673
+ *
674
+ * @param params - Parameters for request
675
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
676
+ * @param callback - Optional callback that handles the response.
677
+ * @returns A promise if used with async/await, or void if used with a callback.
678
+ */
679
+ setIamPolicy(
680
+ params: Params$Resource$Projects$Catalogs$Setiampolicy,
681
+ options: StreamMethodOptions
682
+ ): Promise<GaxiosResponseWithHTTP2<Readable>>;
683
+ setIamPolicy(
684
+ params?: Params$Resource$Projects$Catalogs$Setiampolicy,
685
+ options?: MethodOptions
686
+ ): Promise<GaxiosResponseWithHTTP2<Schema$Policy>>;
687
+ setIamPolicy(
688
+ params: Params$Resource$Projects$Catalogs$Setiampolicy,
689
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
690
+ callback: BodyResponseCallback<Readable>
691
+ ): void;
692
+ setIamPolicy(
693
+ params: Params$Resource$Projects$Catalogs$Setiampolicy,
694
+ options: MethodOptions | BodyResponseCallback<Schema$Policy>,
695
+ callback: BodyResponseCallback<Schema$Policy>
696
+ ): void;
697
+ setIamPolicy(
698
+ params: Params$Resource$Projects$Catalogs$Setiampolicy,
699
+ callback: BodyResponseCallback<Schema$Policy>
700
+ ): void;
701
+ setIamPolicy(callback: BodyResponseCallback<Schema$Policy>): void;
702
+ setIamPolicy(
703
+ paramsOrCallback?:
704
+ | Params$Resource$Projects$Catalogs$Setiampolicy
705
+ | BodyResponseCallback<Schema$Policy>
706
+ | BodyResponseCallback<Readable>,
707
+ optionsOrCallback?:
708
+ | MethodOptions
709
+ | StreamMethodOptions
710
+ | BodyResponseCallback<Schema$Policy>
711
+ | BodyResponseCallback<Readable>,
712
+ callback?:
713
+ BodyResponseCallback<Schema$Policy> | BodyResponseCallback<Readable>
714
+ ):
715
+ | void
716
+ | Promise<GaxiosResponseWithHTTP2<Schema$Policy>>
717
+ | Promise<GaxiosResponseWithHTTP2<Readable>> {
718
+ let params = (paramsOrCallback ||
719
+ {}) as Params$Resource$Projects$Catalogs$Setiampolicy;
720
+ let options = (optionsOrCallback || {}) as MethodOptions;
721
+
722
+ if (typeof paramsOrCallback === 'function') {
723
+ callback = paramsOrCallback;
724
+ params = {} as Params$Resource$Projects$Catalogs$Setiampolicy;
725
+ options = {};
726
+ }
727
+
728
+ if (typeof optionsOrCallback === 'function') {
729
+ callback = optionsOrCallback;
730
+ options = {};
731
+ }
732
+
733
+ const rootUrl = options.rootUrl || 'https://biglake.googleapis.com/';
734
+ const parameters = {
735
+ options: Object.assign(
736
+ {
737
+ url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace(
738
+ /([^:]\/)\/+/g,
739
+ '$1'
740
+ ),
741
+ method: 'POST',
742
+ apiVersion: '',
743
+ },
744
+ options
745
+ ),
746
+ params,
747
+ requiredParams: ['resource'],
748
+ pathParams: ['resource'],
749
+ context: this.context,
750
+ };
751
+ if (callback) {
752
+ createAPIRequest<Schema$Policy>(
753
+ parameters,
754
+ callback as BodyResponseCallback<unknown>
755
+ );
756
+ } else {
757
+ return createAPIRequest<Schema$Policy>(parameters);
758
+ }
759
+ }
760
+
761
+ /**
762
+ * Tests the IAM permissions for the specified catalog.
763
+ * @example
764
+ * ```js
765
+ * // Before running the sample:
766
+ * // - Enable the API at:
767
+ * // https://console.developers.google.com/apis/api/biglake.googleapis.com
768
+ * // - Login into gcloud by running:
769
+ * // ```sh
770
+ * // $ gcloud auth application-default login
771
+ * // ```
772
+ * // - Install the npm module by running:
773
+ * // ```sh
774
+ * // $ npm install googleapis
775
+ * // ```
776
+ *
777
+ * const {google} = require('googleapis');
778
+ * const biglake = google.biglake('v1');
779
+ *
780
+ * async function main() {
781
+ * const auth = new google.auth.GoogleAuth({
782
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
783
+ * scopes: [
784
+ * 'https://www.googleapis.com/auth/bigquery',
785
+ * 'https://www.googleapis.com/auth/cloud-platform',
786
+ * ],
787
+ * });
788
+ *
789
+ * // Acquire an auth client, and bind it to all future calls
790
+ * const authClient = await auth.getClient();
791
+ * google.options({auth: authClient});
792
+ *
793
+ * // Do the magic
794
+ * const res = await biglake.projects.catalogs.testIamPermissions({
795
+ * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
796
+ * resource: 'projects/my-project/catalogs/my-catalog',
797
+ *
798
+ * // Request body metadata
799
+ * requestBody: {
800
+ * // request body parameters
801
+ * // {
802
+ * // "permissions": []
803
+ * // }
804
+ * },
805
+ * });
806
+ * console.log(res.data);
807
+ *
808
+ * // Example response
809
+ * // {
810
+ * // "permissions": []
811
+ * // }
812
+ * }
813
+ *
814
+ * main().catch(e => {
815
+ * console.error(e);
816
+ * throw e;
817
+ * });
818
+ *
819
+ * ```
820
+ *
821
+ * @param params - Parameters for request
822
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
823
+ * @param callback - Optional callback that handles the response.
824
+ * @returns A promise if used with async/await, or void if used with a callback.
825
+ */
826
+ testIamPermissions(
827
+ params: Params$Resource$Projects$Catalogs$Testiampermissions,
828
+ options: StreamMethodOptions
829
+ ): Promise<GaxiosResponseWithHTTP2<Readable>>;
830
+ testIamPermissions(
831
+ params?: Params$Resource$Projects$Catalogs$Testiampermissions,
832
+ options?: MethodOptions
833
+ ): Promise<GaxiosResponseWithHTTP2<Schema$TestIamPermissionsResponse>>;
834
+ testIamPermissions(
835
+ params: Params$Resource$Projects$Catalogs$Testiampermissions,
836
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
837
+ callback: BodyResponseCallback<Readable>
838
+ ): void;
839
+ testIamPermissions(
840
+ params: Params$Resource$Projects$Catalogs$Testiampermissions,
841
+ options:
842
+ MethodOptions | BodyResponseCallback<Schema$TestIamPermissionsResponse>,
843
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
844
+ ): void;
845
+ testIamPermissions(
846
+ params: Params$Resource$Projects$Catalogs$Testiampermissions,
847
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
848
+ ): void;
849
+ testIamPermissions(
850
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
851
+ ): void;
852
+ testIamPermissions(
853
+ paramsOrCallback?:
854
+ | Params$Resource$Projects$Catalogs$Testiampermissions
855
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
856
+ | BodyResponseCallback<Readable>,
857
+ optionsOrCallback?:
858
+ | MethodOptions
859
+ | StreamMethodOptions
860
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
861
+ | BodyResponseCallback<Readable>,
862
+ callback?:
863
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
864
+ | BodyResponseCallback<Readable>
865
+ ):
866
+ | void
867
+ | Promise<GaxiosResponseWithHTTP2<Schema$TestIamPermissionsResponse>>
868
+ | Promise<GaxiosResponseWithHTTP2<Readable>> {
869
+ let params = (paramsOrCallback ||
870
+ {}) as Params$Resource$Projects$Catalogs$Testiampermissions;
871
+ let options = (optionsOrCallback || {}) as MethodOptions;
872
+
873
+ if (typeof paramsOrCallback === 'function') {
874
+ callback = paramsOrCallback;
875
+ params = {} as Params$Resource$Projects$Catalogs$Testiampermissions;
876
+ options = {};
877
+ }
878
+
879
+ if (typeof optionsOrCallback === 'function') {
880
+ callback = optionsOrCallback;
881
+ options = {};
882
+ }
883
+
884
+ const rootUrl = options.rootUrl || 'https://biglake.googleapis.com/';
885
+ const parameters = {
886
+ options: Object.assign(
887
+ {
888
+ url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace(
889
+ /([^:]\/)\/+/g,
890
+ '$1'
891
+ ),
892
+ method: 'POST',
893
+ apiVersion: '',
894
+ },
895
+ options
896
+ ),
897
+ params,
898
+ requiredParams: ['resource'],
899
+ pathParams: ['resource'],
900
+ context: this.context,
901
+ };
902
+ if (callback) {
903
+ createAPIRequest<Schema$TestIamPermissionsResponse>(
904
+ parameters,
905
+ callback as BodyResponseCallback<unknown>
906
+ );
907
+ } else {
908
+ return createAPIRequest<Schema$TestIamPermissionsResponse>(parameters);
909
+ }
910
+ }
911
+ }
912
+
913
+ export interface Params$Resource$Projects$Catalogs$Getiampolicy extends StandardParameters {
914
+ /**
915
+ * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
916
+ */
917
+ 'options.requestedPolicyVersion'?: number;
918
+ /**
919
+ * REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
920
+ */
921
+ resource?: string;
922
+ }
923
+ export interface Params$Resource$Projects$Catalogs$Setiampolicy extends StandardParameters {
924
+ /**
925
+ * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
926
+ */
927
+ resource?: string;
928
+
929
+ /**
930
+ * Request body metadata
931
+ */
932
+ requestBody?: Schema$SetIamPolicyRequest;
933
+ }
934
+ export interface Params$Resource$Projects$Catalogs$Testiampermissions extends StandardParameters {
935
+ /**
936
+ * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
937
+ */
938
+ resource?: string;
939
+
940
+ /**
941
+ * Request body metadata
942
+ */
943
+ requestBody?: Schema$TestIamPermissionsRequest;
944
+ }
945
+
946
+ export class Resource$Projects$Catalogs$Namespaces {
947
+ context: APIRequestContext;
948
+ tables: Resource$Projects$Catalogs$Namespaces$Tables;
949
+ constructor(context: APIRequestContext) {
950
+ this.context = context;
951
+ this.tables = new Resource$Projects$Catalogs$Namespaces$Tables(
952
+ this.context
953
+ );
954
+ }
955
+
956
+ /**
957
+ * Gets the IAM policy for the specified Catalog.
958
+ * @example
959
+ * ```js
960
+ * // Before running the sample:
961
+ * // - Enable the API at:
962
+ * // https://console.developers.google.com/apis/api/biglake.googleapis.com
963
+ * // - Login into gcloud by running:
964
+ * // ```sh
965
+ * // $ gcloud auth application-default login
966
+ * // ```
967
+ * // - Install the npm module by running:
968
+ * // ```sh
969
+ * // $ npm install googleapis
970
+ * // ```
971
+ *
972
+ * const {google} = require('googleapis');
973
+ * const biglake = google.biglake('v1');
974
+ *
975
+ * async function main() {
976
+ * const auth = new google.auth.GoogleAuth({
977
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
978
+ * scopes: [
979
+ * 'https://www.googleapis.com/auth/bigquery',
980
+ * 'https://www.googleapis.com/auth/cloud-platform',
981
+ * ],
982
+ * });
983
+ *
984
+ * // Acquire an auth client, and bind it to all future calls
985
+ * const authClient = await auth.getClient();
986
+ * google.options({auth: authClient});
987
+ *
988
+ * // Do the magic
989
+ * const res = await biglake.projects.catalogs.namespaces.getIamPolicy({
990
+ * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
991
+ * 'options.requestedPolicyVersion': 'placeholder-value',
992
+ * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
993
+ * resource: 'projects/my-project/catalogs/my-catalog/namespaces/my-namespace',
994
+ * });
995
+ * console.log(res.data);
996
+ *
997
+ * // Example response
998
+ * // {
999
+ * // "auditConfigs": [],
1000
+ * // "bindings": [],
1001
+ * // "etag": "my_etag",
1002
+ * // "version": 0
1003
+ * // }
1004
+ * }
1005
+ *
1006
+ * main().catch(e => {
1007
+ * console.error(e);
1008
+ * throw e;
1009
+ * });
1010
+ *
1011
+ * ```
1012
+ *
1013
+ * @param params - Parameters for request
1014
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
1015
+ * @param callback - Optional callback that handles the response.
1016
+ * @returns A promise if used with async/await, or void if used with a callback.
1017
+ */
1018
+ getIamPolicy(
1019
+ params: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1020
+ options: StreamMethodOptions
1021
+ ): Promise<GaxiosResponseWithHTTP2<Readable>>;
1022
+ getIamPolicy(
1023
+ params?: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1024
+ options?: MethodOptions
1025
+ ): Promise<GaxiosResponseWithHTTP2<Schema$Policy>>;
1026
+ getIamPolicy(
1027
+ params: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1028
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
1029
+ callback: BodyResponseCallback<Readable>
1030
+ ): void;
1031
+ getIamPolicy(
1032
+ params: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1033
+ options: MethodOptions | BodyResponseCallback<Schema$Policy>,
1034
+ callback: BodyResponseCallback<Schema$Policy>
1035
+ ): void;
1036
+ getIamPolicy(
1037
+ params: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1038
+ callback: BodyResponseCallback<Schema$Policy>
1039
+ ): void;
1040
+ getIamPolicy(callback: BodyResponseCallback<Schema$Policy>): void;
1041
+ getIamPolicy(
1042
+ paramsOrCallback?:
1043
+ | Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy
1044
+ | BodyResponseCallback<Schema$Policy>
1045
+ | BodyResponseCallback<Readable>,
1046
+ optionsOrCallback?:
1047
+ | MethodOptions
1048
+ | StreamMethodOptions
1049
+ | BodyResponseCallback<Schema$Policy>
1050
+ | BodyResponseCallback<Readable>,
1051
+ callback?:
1052
+ BodyResponseCallback<Schema$Policy> | BodyResponseCallback<Readable>
1053
+ ):
1054
+ | void
1055
+ | Promise<GaxiosResponseWithHTTP2<Schema$Policy>>
1056
+ | Promise<GaxiosResponseWithHTTP2<Readable>> {
1057
+ let params = (paramsOrCallback ||
1058
+ {}) as Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy;
1059
+ let options = (optionsOrCallback || {}) as MethodOptions;
1060
+
1061
+ if (typeof paramsOrCallback === 'function') {
1062
+ callback = paramsOrCallback;
1063
+ params =
1064
+ {} as Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy;
1065
+ options = {};
1066
+ }
1067
+
1068
+ if (typeof optionsOrCallback === 'function') {
1069
+ callback = optionsOrCallback;
1070
+ options = {};
1071
+ }
1072
+
1073
+ const rootUrl = options.rootUrl || 'https://biglake.googleapis.com/';
1074
+ const parameters = {
1075
+ options: Object.assign(
1076
+ {
1077
+ url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace(
1078
+ /([^:]\/)\/+/g,
1079
+ '$1'
1080
+ ),
1081
+ method: 'GET',
1082
+ apiVersion: '',
1083
+ },
1084
+ options
1085
+ ),
1086
+ params,
1087
+ requiredParams: ['resource'],
1088
+ pathParams: ['resource'],
1089
+ context: this.context,
1090
+ };
1091
+ if (callback) {
1092
+ createAPIRequest<Schema$Policy>(
1093
+ parameters,
1094
+ callback as BodyResponseCallback<unknown>
1095
+ );
1096
+ } else {
1097
+ return createAPIRequest<Schema$Policy>(parameters);
1098
+ }
1099
+ }
1100
+
1101
+ /**
1102
+ * Sets the IAM policy for the specified catalog.
1103
+ * @example
1104
+ * ```js
1105
+ * // Before running the sample:
1106
+ * // - Enable the API at:
1107
+ * // https://console.developers.google.com/apis/api/biglake.googleapis.com
1108
+ * // - Login into gcloud by running:
1109
+ * // ```sh
1110
+ * // $ gcloud auth application-default login
1111
+ * // ```
1112
+ * // - Install the npm module by running:
1113
+ * // ```sh
1114
+ * // $ npm install googleapis
1115
+ * // ```
1116
+ *
1117
+ * const {google} = require('googleapis');
1118
+ * const biglake = google.biglake('v1');
1119
+ *
1120
+ * async function main() {
1121
+ * const auth = new google.auth.GoogleAuth({
1122
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
1123
+ * scopes: [
1124
+ * 'https://www.googleapis.com/auth/bigquery',
1125
+ * 'https://www.googleapis.com/auth/cloud-platform',
1126
+ * ],
1127
+ * });
1128
+ *
1129
+ * // Acquire an auth client, and bind it to all future calls
1130
+ * const authClient = await auth.getClient();
1131
+ * google.options({auth: authClient});
1132
+ *
1133
+ * // Do the magic
1134
+ * const res = await biglake.projects.catalogs.namespaces.setIamPolicy({
1135
+ * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
1136
+ * resource: 'projects/my-project/catalogs/my-catalog/namespaces/my-namespace',
1137
+ *
1138
+ * // Request body metadata
1139
+ * requestBody: {
1140
+ * // request body parameters
1141
+ * // {
1142
+ * // "policy": {},
1143
+ * // "updateMask": "my_updateMask"
1144
+ * // }
1145
+ * },
1146
+ * });
1147
+ * console.log(res.data);
1148
+ *
1149
+ * // Example response
1150
+ * // {
1151
+ * // "auditConfigs": [],
1152
+ * // "bindings": [],
1153
+ * // "etag": "my_etag",
1154
+ * // "version": 0
1155
+ * // }
1156
+ * }
1157
+ *
1158
+ * main().catch(e => {
1159
+ * console.error(e);
1160
+ * throw e;
1161
+ * });
1162
+ *
1163
+ * ```
1164
+ *
1165
+ * @param params - Parameters for request
1166
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
1167
+ * @param callback - Optional callback that handles the response.
1168
+ * @returns A promise if used with async/await, or void if used with a callback.
1169
+ */
1170
+ setIamPolicy(
1171
+ params: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
1172
+ options: StreamMethodOptions
1173
+ ): Promise<GaxiosResponseWithHTTP2<Readable>>;
1174
+ setIamPolicy(
1175
+ params?: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
1176
+ options?: MethodOptions
1177
+ ): Promise<GaxiosResponseWithHTTP2<Schema$Policy>>;
1178
+ setIamPolicy(
1179
+ params: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
1180
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
1181
+ callback: BodyResponseCallback<Readable>
1182
+ ): void;
1183
+ setIamPolicy(
1184
+ params: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
525
1185
  options: MethodOptions | BodyResponseCallback<Schema$Policy>,
526
1186
  callback: BodyResponseCallback<Schema$Policy>
527
1187
  ): void;
528
- getIamPolicy(
529
- params: Params$Resource$Projects$Catalogs$Getiampolicy,
1188
+ setIamPolicy(
1189
+ params: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
530
1190
  callback: BodyResponseCallback<Schema$Policy>
531
1191
  ): void;
532
- getIamPolicy(callback: BodyResponseCallback<Schema$Policy>): void;
533
- getIamPolicy(
1192
+ setIamPolicy(callback: BodyResponseCallback<Schema$Policy>): void;
1193
+ setIamPolicy(
534
1194
  paramsOrCallback?:
535
- | Params$Resource$Projects$Catalogs$Getiampolicy
1195
+ | Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy
536
1196
  | BodyResponseCallback<Schema$Policy>
537
1197
  | BodyResponseCallback<Readable>,
538
1198
  optionsOrCallback?:
@@ -541,19 +1201,19 @@ export namespace biglake_v1 {
541
1201
  | BodyResponseCallback<Schema$Policy>
542
1202
  | BodyResponseCallback<Readable>,
543
1203
  callback?:
544
- | BodyResponseCallback<Schema$Policy>
545
- | BodyResponseCallback<Readable>
1204
+ BodyResponseCallback<Schema$Policy> | BodyResponseCallback<Readable>
546
1205
  ):
547
1206
  | void
548
1207
  | Promise<GaxiosResponseWithHTTP2<Schema$Policy>>
549
1208
  | Promise<GaxiosResponseWithHTTP2<Readable>> {
550
1209
  let params = (paramsOrCallback ||
551
- {}) as Params$Resource$Projects$Catalogs$Getiampolicy;
1210
+ {}) as Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy;
552
1211
  let options = (optionsOrCallback || {}) as MethodOptions;
553
1212
 
554
1213
  if (typeof paramsOrCallback === 'function') {
555
1214
  callback = paramsOrCallback;
556
- params = {} as Params$Resource$Projects$Catalogs$Getiampolicy;
1215
+ params =
1216
+ {} as Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy;
557
1217
  options = {};
558
1218
  }
559
1219
 
@@ -566,11 +1226,11 @@ export namespace biglake_v1 {
566
1226
  const parameters = {
567
1227
  options: Object.assign(
568
1228
  {
569
- url: (rootUrl + '/v1/{+resource}:getIamPolicy').replace(
1229
+ url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace(
570
1230
  /([^:]\/)\/+/g,
571
1231
  '$1'
572
1232
  ),
573
- method: 'GET',
1233
+ method: 'POST',
574
1234
  apiVersion: '',
575
1235
  },
576
1236
  options
@@ -591,7 +1251,7 @@ export namespace biglake_v1 {
591
1251
  }
592
1252
 
593
1253
  /**
594
- * Sets the IAM policy for the specified catalog.
1254
+ * Tests the IAM permissions for the specified namespace.
595
1255
  * @example
596
1256
  * ```js
597
1257
  * // Before running the sample:
@@ -623,16 +1283,15 @@ export namespace biglake_v1 {
623
1283
  * google.options({auth: authClient});
624
1284
  *
625
1285
  * // Do the magic
626
- * const res = await biglake.projects.catalogs.setIamPolicy({
627
- * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
628
- * resource: 'projects/my-project/catalogs/my-catalog',
1286
+ * const res = await biglake.projects.catalogs.namespaces.testIamPermissions({
1287
+ * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
1288
+ * resource: 'projects/my-project/catalogs/my-catalog/namespaces/my-namespace',
629
1289
  *
630
1290
  * // Request body metadata
631
1291
  * requestBody: {
632
1292
  * // request body parameters
633
1293
  * // {
634
- * // "policy": {},
635
- * // "updateMask": "my_updateMask"
1294
+ * // "permissions": []
636
1295
  * // }
637
1296
  * },
638
1297
  * });
@@ -640,10 +1299,7 @@ export namespace biglake_v1 {
640
1299
  *
641
1300
  * // Example response
642
1301
  * // {
643
- * // "auditConfigs": [],
644
- * // "bindings": [],
645
- * // "etag": "my_etag",
646
- * // "version": 0
1302
+ * // "permissions": []
647
1303
  * // }
648
1304
  * }
649
1305
  *
@@ -659,53 +1315,57 @@ export namespace biglake_v1 {
659
1315
  * @param callback - Optional callback that handles the response.
660
1316
  * @returns A promise if used with async/await, or void if used with a callback.
661
1317
  */
662
- setIamPolicy(
663
- params: Params$Resource$Projects$Catalogs$Setiampolicy,
1318
+ testIamPermissions(
1319
+ params: Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions,
664
1320
  options: StreamMethodOptions
665
1321
  ): Promise<GaxiosResponseWithHTTP2<Readable>>;
666
- setIamPolicy(
667
- params?: Params$Resource$Projects$Catalogs$Setiampolicy,
1322
+ testIamPermissions(
1323
+ params?: Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions,
668
1324
  options?: MethodOptions
669
- ): Promise<GaxiosResponseWithHTTP2<Schema$Policy>>;
670
- setIamPolicy(
671
- params: Params$Resource$Projects$Catalogs$Setiampolicy,
1325
+ ): Promise<GaxiosResponseWithHTTP2<Schema$TestIamPermissionsResponse>>;
1326
+ testIamPermissions(
1327
+ params: Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions,
672
1328
  options: StreamMethodOptions | BodyResponseCallback<Readable>,
673
1329
  callback: BodyResponseCallback<Readable>
674
1330
  ): void;
675
- setIamPolicy(
676
- params: Params$Resource$Projects$Catalogs$Setiampolicy,
677
- options: MethodOptions | BodyResponseCallback<Schema$Policy>,
678
- callback: BodyResponseCallback<Schema$Policy>
1331
+ testIamPermissions(
1332
+ params: Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions,
1333
+ options:
1334
+ MethodOptions | BodyResponseCallback<Schema$TestIamPermissionsResponse>,
1335
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
679
1336
  ): void;
680
- setIamPolicy(
681
- params: Params$Resource$Projects$Catalogs$Setiampolicy,
682
- callback: BodyResponseCallback<Schema$Policy>
1337
+ testIamPermissions(
1338
+ params: Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions,
1339
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
683
1340
  ): void;
684
- setIamPolicy(callback: BodyResponseCallback<Schema$Policy>): void;
685
- setIamPolicy(
1341
+ testIamPermissions(
1342
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
1343
+ ): void;
1344
+ testIamPermissions(
686
1345
  paramsOrCallback?:
687
- | Params$Resource$Projects$Catalogs$Setiampolicy
688
- | BodyResponseCallback<Schema$Policy>
1346
+ | Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions
1347
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
689
1348
  | BodyResponseCallback<Readable>,
690
1349
  optionsOrCallback?:
691
1350
  | MethodOptions
692
1351
  | StreamMethodOptions
693
- | BodyResponseCallback<Schema$Policy>
1352
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
694
1353
  | BodyResponseCallback<Readable>,
695
1354
  callback?:
696
- | BodyResponseCallback<Schema$Policy>
1355
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
697
1356
  | BodyResponseCallback<Readable>
698
1357
  ):
699
1358
  | void
700
- | Promise<GaxiosResponseWithHTTP2<Schema$Policy>>
1359
+ | Promise<GaxiosResponseWithHTTP2<Schema$TestIamPermissionsResponse>>
701
1360
  | Promise<GaxiosResponseWithHTTP2<Readable>> {
702
1361
  let params = (paramsOrCallback ||
703
- {}) as Params$Resource$Projects$Catalogs$Setiampolicy;
1362
+ {}) as Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions;
704
1363
  let options = (optionsOrCallback || {}) as MethodOptions;
705
1364
 
706
1365
  if (typeof paramsOrCallback === 'function') {
707
1366
  callback = paramsOrCallback;
708
- params = {} as Params$Resource$Projects$Catalogs$Setiampolicy;
1367
+ params =
1368
+ {} as Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions;
709
1369
  options = {};
710
1370
  }
711
1371
 
@@ -718,7 +1378,7 @@ export namespace biglake_v1 {
718
1378
  const parameters = {
719
1379
  options: Object.assign(
720
1380
  {
721
- url: (rootUrl + '/v1/{+resource}:setIamPolicy').replace(
1381
+ url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace(
722
1382
  /([^:]\/)\/+/g,
723
1383
  '$1'
724
1384
  ),
@@ -733,17 +1393,17 @@ export namespace biglake_v1 {
733
1393
  context: this.context,
734
1394
  };
735
1395
  if (callback) {
736
- createAPIRequest<Schema$Policy>(
1396
+ createAPIRequest<Schema$TestIamPermissionsResponse>(
737
1397
  parameters,
738
1398
  callback as BodyResponseCallback<unknown>
739
1399
  );
740
1400
  } else {
741
- return createAPIRequest<Schema$Policy>(parameters);
1401
+ return createAPIRequest<Schema$TestIamPermissionsResponse>(parameters);
742
1402
  }
743
1403
  }
744
1404
  }
745
1405
 
746
- export interface Params$Resource$Projects$Catalogs$Getiampolicy extends StandardParameters {
1406
+ export interface Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy extends StandardParameters {
747
1407
  /**
748
1408
  * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
749
1409
  */
@@ -753,7 +1413,7 @@ export namespace biglake_v1 {
753
1413
  */
754
1414
  resource?: string;
755
1415
  }
756
- export interface Params$Resource$Projects$Catalogs$Setiampolicy extends StandardParameters {
1416
+ export interface Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy extends StandardParameters {
757
1417
  /**
758
1418
  * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
759
1419
  */
@@ -764,8 +1424,19 @@ export namespace biglake_v1 {
764
1424
  */
765
1425
  requestBody?: Schema$SetIamPolicyRequest;
766
1426
  }
1427
+ export interface Params$Resource$Projects$Catalogs$Namespaces$Testiampermissions extends StandardParameters {
1428
+ /**
1429
+ * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
1430
+ */
1431
+ resource?: string;
1432
+
1433
+ /**
1434
+ * Request body metadata
1435
+ */
1436
+ requestBody?: Schema$TestIamPermissionsRequest;
1437
+ }
767
1438
 
768
- export class Resource$Projects$Catalogs$Namespaces {
1439
+ export class Resource$Projects$Catalogs$Namespaces$Tables {
769
1440
  context: APIRequestContext;
770
1441
  constructor(context: APIRequestContext) {
771
1442
  this.context = context;
@@ -804,11 +1475,12 @@ export namespace biglake_v1 {
804
1475
  * google.options({auth: authClient});
805
1476
  *
806
1477
  * // Do the magic
807
- * const res = await biglake.projects.catalogs.namespaces.getIamPolicy({
1478
+ * const res = await biglake.projects.catalogs.namespaces.tables.getIamPolicy({
808
1479
  * // Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
809
1480
  * 'options.requestedPolicyVersion': 'placeholder-value',
810
1481
  * // REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
811
- * resource: 'projects/my-project/catalogs/my-catalog/namespaces/my-namespace',
1482
+ * resource:
1483
+ * 'projects/my-project/catalogs/my-catalog/namespaces/my-namespace/tables/my-table',
812
1484
  * });
813
1485
  * console.log(res.data);
814
1486
  *
@@ -834,31 +1506,31 @@ export namespace biglake_v1 {
834
1506
  * @returns A promise if used with async/await, or void if used with a callback.
835
1507
  */
836
1508
  getIamPolicy(
837
- params: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1509
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy,
838
1510
  options: StreamMethodOptions
839
1511
  ): Promise<GaxiosResponseWithHTTP2<Readable>>;
840
1512
  getIamPolicy(
841
- params?: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1513
+ params?: Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy,
842
1514
  options?: MethodOptions
843
1515
  ): Promise<GaxiosResponseWithHTTP2<Schema$Policy>>;
844
1516
  getIamPolicy(
845
- params: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1517
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy,
846
1518
  options: StreamMethodOptions | BodyResponseCallback<Readable>,
847
1519
  callback: BodyResponseCallback<Readable>
848
1520
  ): void;
849
1521
  getIamPolicy(
850
- params: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1522
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy,
851
1523
  options: MethodOptions | BodyResponseCallback<Schema$Policy>,
852
1524
  callback: BodyResponseCallback<Schema$Policy>
853
1525
  ): void;
854
1526
  getIamPolicy(
855
- params: Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy,
1527
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy,
856
1528
  callback: BodyResponseCallback<Schema$Policy>
857
1529
  ): void;
858
1530
  getIamPolicy(callback: BodyResponseCallback<Schema$Policy>): void;
859
1531
  getIamPolicy(
860
1532
  paramsOrCallback?:
861
- | Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy
1533
+ | Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy
862
1534
  | BodyResponseCallback<Schema$Policy>
863
1535
  | BodyResponseCallback<Readable>,
864
1536
  optionsOrCallback?:
@@ -867,20 +1539,19 @@ export namespace biglake_v1 {
867
1539
  | BodyResponseCallback<Schema$Policy>
868
1540
  | BodyResponseCallback<Readable>,
869
1541
  callback?:
870
- | BodyResponseCallback<Schema$Policy>
871
- | BodyResponseCallback<Readable>
1542
+ BodyResponseCallback<Schema$Policy> | BodyResponseCallback<Readable>
872
1543
  ):
873
1544
  | void
874
1545
  | Promise<GaxiosResponseWithHTTP2<Schema$Policy>>
875
1546
  | Promise<GaxiosResponseWithHTTP2<Readable>> {
876
1547
  let params = (paramsOrCallback ||
877
- {}) as Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy;
1548
+ {}) as Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy;
878
1549
  let options = (optionsOrCallback || {}) as MethodOptions;
879
1550
 
880
1551
  if (typeof paramsOrCallback === 'function') {
881
1552
  callback = paramsOrCallback;
882
1553
  params =
883
- {} as Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy;
1554
+ {} as Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy;
884
1555
  options = {};
885
1556
  }
886
1557
 
@@ -950,9 +1621,10 @@ export namespace biglake_v1 {
950
1621
  * google.options({auth: authClient});
951
1622
  *
952
1623
  * // Do the magic
953
- * const res = await biglake.projects.catalogs.namespaces.setIamPolicy({
1624
+ * const res = await biglake.projects.catalogs.namespaces.tables.setIamPolicy({
954
1625
  * // REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
955
- * resource: 'projects/my-project/catalogs/my-catalog/namespaces/my-namespace',
1626
+ * resource:
1627
+ * 'projects/my-project/catalogs/my-catalog/namespaces/my-namespace/tables/my-table',
956
1628
  *
957
1629
  * // Request body metadata
958
1630
  * requestBody: {
@@ -987,31 +1659,31 @@ export namespace biglake_v1 {
987
1659
  * @returns A promise if used with async/await, or void if used with a callback.
988
1660
  */
989
1661
  setIamPolicy(
990
- params: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
1662
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy,
991
1663
  options: StreamMethodOptions
992
1664
  ): Promise<GaxiosResponseWithHTTP2<Readable>>;
993
1665
  setIamPolicy(
994
- params?: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
1666
+ params?: Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy,
995
1667
  options?: MethodOptions
996
1668
  ): Promise<GaxiosResponseWithHTTP2<Schema$Policy>>;
997
1669
  setIamPolicy(
998
- params: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
1670
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy,
999
1671
  options: StreamMethodOptions | BodyResponseCallback<Readable>,
1000
1672
  callback: BodyResponseCallback<Readable>
1001
1673
  ): void;
1002
1674
  setIamPolicy(
1003
- params: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
1675
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy,
1004
1676
  options: MethodOptions | BodyResponseCallback<Schema$Policy>,
1005
1677
  callback: BodyResponseCallback<Schema$Policy>
1006
1678
  ): void;
1007
1679
  setIamPolicy(
1008
- params: Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy,
1680
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy,
1009
1681
  callback: BodyResponseCallback<Schema$Policy>
1010
1682
  ): void;
1011
1683
  setIamPolicy(callback: BodyResponseCallback<Schema$Policy>): void;
1012
1684
  setIamPolicy(
1013
1685
  paramsOrCallback?:
1014
- | Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy
1686
+ | Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy
1015
1687
  | BodyResponseCallback<Schema$Policy>
1016
1688
  | BodyResponseCallback<Readable>,
1017
1689
  optionsOrCallback?:
@@ -1020,20 +1692,19 @@ export namespace biglake_v1 {
1020
1692
  | BodyResponseCallback<Schema$Policy>
1021
1693
  | BodyResponseCallback<Readable>,
1022
1694
  callback?:
1023
- | BodyResponseCallback<Schema$Policy>
1024
- | BodyResponseCallback<Readable>
1695
+ BodyResponseCallback<Schema$Policy> | BodyResponseCallback<Readable>
1025
1696
  ):
1026
1697
  | void
1027
1698
  | Promise<GaxiosResponseWithHTTP2<Schema$Policy>>
1028
1699
  | Promise<GaxiosResponseWithHTTP2<Readable>> {
1029
1700
  let params = (paramsOrCallback ||
1030
- {}) as Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy;
1701
+ {}) as Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy;
1031
1702
  let options = (optionsOrCallback || {}) as MethodOptions;
1032
1703
 
1033
1704
  if (typeof paramsOrCallback === 'function') {
1034
1705
  callback = paramsOrCallback;
1035
1706
  params =
1036
- {} as Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy;
1707
+ {} as Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy;
1037
1708
  options = {};
1038
1709
  }
1039
1710
 
@@ -1069,9 +1740,163 @@ export namespace biglake_v1 {
1069
1740
  return createAPIRequest<Schema$Policy>(parameters);
1070
1741
  }
1071
1742
  }
1743
+
1744
+ /**
1745
+ * Tests the IAM permissions for the specified table.
1746
+ * @example
1747
+ * ```js
1748
+ * // Before running the sample:
1749
+ * // - Enable the API at:
1750
+ * // https://console.developers.google.com/apis/api/biglake.googleapis.com
1751
+ * // - Login into gcloud by running:
1752
+ * // ```sh
1753
+ * // $ gcloud auth application-default login
1754
+ * // ```
1755
+ * // - Install the npm module by running:
1756
+ * // ```sh
1757
+ * // $ npm install googleapis
1758
+ * // ```
1759
+ *
1760
+ * const {google} = require('googleapis');
1761
+ * const biglake = google.biglake('v1');
1762
+ *
1763
+ * async function main() {
1764
+ * const auth = new google.auth.GoogleAuth({
1765
+ * // Scopes can be specified either as an array or as a single, space-delimited string.
1766
+ * scopes: [
1767
+ * 'https://www.googleapis.com/auth/bigquery',
1768
+ * 'https://www.googleapis.com/auth/cloud-platform',
1769
+ * ],
1770
+ * });
1771
+ *
1772
+ * // Acquire an auth client, and bind it to all future calls
1773
+ * const authClient = await auth.getClient();
1774
+ * google.options({auth: authClient});
1775
+ *
1776
+ * // Do the magic
1777
+ * const res =
1778
+ * await biglake.projects.catalogs.namespaces.tables.testIamPermissions({
1779
+ * // REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
1780
+ * resource:
1781
+ * 'projects/my-project/catalogs/my-catalog/namespaces/my-namespace/tables/my-table',
1782
+ *
1783
+ * // Request body metadata
1784
+ * requestBody: {
1785
+ * // request body parameters
1786
+ * // {
1787
+ * // "permissions": []
1788
+ * // }
1789
+ * },
1790
+ * });
1791
+ * console.log(res.data);
1792
+ *
1793
+ * // Example response
1794
+ * // {
1795
+ * // "permissions": []
1796
+ * // }
1797
+ * }
1798
+ *
1799
+ * main().catch(e => {
1800
+ * console.error(e);
1801
+ * throw e;
1802
+ * });
1803
+ *
1804
+ * ```
1805
+ *
1806
+ * @param params - Parameters for request
1807
+ * @param options - Optionally override request options, such as `url`, `method`, and `encoding`.
1808
+ * @param callback - Optional callback that handles the response.
1809
+ * @returns A promise if used with async/await, or void if used with a callback.
1810
+ */
1811
+ testIamPermissions(
1812
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions,
1813
+ options: StreamMethodOptions
1814
+ ): Promise<GaxiosResponseWithHTTP2<Readable>>;
1815
+ testIamPermissions(
1816
+ params?: Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions,
1817
+ options?: MethodOptions
1818
+ ): Promise<GaxiosResponseWithHTTP2<Schema$TestIamPermissionsResponse>>;
1819
+ testIamPermissions(
1820
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions,
1821
+ options: StreamMethodOptions | BodyResponseCallback<Readable>,
1822
+ callback: BodyResponseCallback<Readable>
1823
+ ): void;
1824
+ testIamPermissions(
1825
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions,
1826
+ options:
1827
+ MethodOptions | BodyResponseCallback<Schema$TestIamPermissionsResponse>,
1828
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
1829
+ ): void;
1830
+ testIamPermissions(
1831
+ params: Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions,
1832
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
1833
+ ): void;
1834
+ testIamPermissions(
1835
+ callback: BodyResponseCallback<Schema$TestIamPermissionsResponse>
1836
+ ): void;
1837
+ testIamPermissions(
1838
+ paramsOrCallback?:
1839
+ | Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions
1840
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
1841
+ | BodyResponseCallback<Readable>,
1842
+ optionsOrCallback?:
1843
+ | MethodOptions
1844
+ | StreamMethodOptions
1845
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
1846
+ | BodyResponseCallback<Readable>,
1847
+ callback?:
1848
+ | BodyResponseCallback<Schema$TestIamPermissionsResponse>
1849
+ | BodyResponseCallback<Readable>
1850
+ ):
1851
+ | void
1852
+ | Promise<GaxiosResponseWithHTTP2<Schema$TestIamPermissionsResponse>>
1853
+ | Promise<GaxiosResponseWithHTTP2<Readable>> {
1854
+ let params = (paramsOrCallback ||
1855
+ {}) as Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions;
1856
+ let options = (optionsOrCallback || {}) as MethodOptions;
1857
+
1858
+ if (typeof paramsOrCallback === 'function') {
1859
+ callback = paramsOrCallback;
1860
+ params =
1861
+ {} as Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions;
1862
+ options = {};
1863
+ }
1864
+
1865
+ if (typeof optionsOrCallback === 'function') {
1866
+ callback = optionsOrCallback;
1867
+ options = {};
1868
+ }
1869
+
1870
+ const rootUrl = options.rootUrl || 'https://biglake.googleapis.com/';
1871
+ const parameters = {
1872
+ options: Object.assign(
1873
+ {
1874
+ url: (rootUrl + '/v1/{+resource}:testIamPermissions').replace(
1875
+ /([^:]\/)\/+/g,
1876
+ '$1'
1877
+ ),
1878
+ method: 'POST',
1879
+ apiVersion: '',
1880
+ },
1881
+ options
1882
+ ),
1883
+ params,
1884
+ requiredParams: ['resource'],
1885
+ pathParams: ['resource'],
1886
+ context: this.context,
1887
+ };
1888
+ if (callback) {
1889
+ createAPIRequest<Schema$TestIamPermissionsResponse>(
1890
+ parameters,
1891
+ callback as BodyResponseCallback<unknown>
1892
+ );
1893
+ } else {
1894
+ return createAPIRequest<Schema$TestIamPermissionsResponse>(parameters);
1895
+ }
1896
+ }
1072
1897
  }
1073
1898
 
1074
- export interface Params$Resource$Projects$Catalogs$Namespaces$Getiampolicy extends StandardParameters {
1899
+ export interface Params$Resource$Projects$Catalogs$Namespaces$Tables$Getiampolicy extends StandardParameters {
1075
1900
  /**
1076
1901
  * Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
1077
1902
  */
@@ -1081,7 +1906,7 @@ export namespace biglake_v1 {
1081
1906
  */
1082
1907
  resource?: string;
1083
1908
  }
1084
- export interface Params$Resource$Projects$Catalogs$Namespaces$Setiampolicy extends StandardParameters {
1909
+ export interface Params$Resource$Projects$Catalogs$Namespaces$Tables$Setiampolicy extends StandardParameters {
1085
1910
  /**
1086
1911
  * REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
1087
1912
  */
@@ -1092,6 +1917,17 @@ export namespace biglake_v1 {
1092
1917
  */
1093
1918
  requestBody?: Schema$SetIamPolicyRequest;
1094
1919
  }
1920
+ export interface Params$Resource$Projects$Catalogs$Namespaces$Tables$Testiampermissions extends StandardParameters {
1921
+ /**
1922
+ * REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.
1923
+ */
1924
+ resource?: string;
1925
+
1926
+ /**
1927
+ * Request body metadata
1928
+ */
1929
+ requestBody?: Schema$TestIamPermissionsRequest;
1930
+ }
1095
1931
 
1096
1932
  export class Resource$Projects$Locations {
1097
1933
  context: APIRequestContext;
@@ -1221,8 +2057,7 @@ export namespace biglake_v1 {
1221
2057
  | BodyResponseCallback<Schema$Catalog>
1222
2058
  | BodyResponseCallback<Readable>,
1223
2059
  callback?:
1224
- | BodyResponseCallback<Schema$Catalog>
1225
- | BodyResponseCallback<Readable>
2060
+ BodyResponseCallback<Schema$Catalog> | BodyResponseCallback<Readable>
1226
2061
  ):
1227
2062
  | void
1228
2063
  | Promise<GaxiosResponseWithHTTP2<Schema$Catalog>>
@@ -1365,8 +2200,7 @@ export namespace biglake_v1 {
1365
2200
  | BodyResponseCallback<Schema$Catalog>
1366
2201
  | BodyResponseCallback<Readable>,
1367
2202
  callback?:
1368
- | BodyResponseCallback<Schema$Catalog>
1369
- | BodyResponseCallback<Readable>
2203
+ BodyResponseCallback<Schema$Catalog> | BodyResponseCallback<Readable>
1370
2204
  ):
1371
2205
  | void
1372
2206
  | Promise<GaxiosResponseWithHTTP2<Schema$Catalog>>
@@ -1506,8 +2340,7 @@ export namespace biglake_v1 {
1506
2340
  | BodyResponseCallback<Schema$Catalog>
1507
2341
  | BodyResponseCallback<Readable>,
1508
2342
  callback?:
1509
- | BodyResponseCallback<Schema$Catalog>
1510
- | BodyResponseCallback<Readable>
2343
+ BodyResponseCallback<Schema$Catalog> | BodyResponseCallback<Readable>
1511
2344
  ):
1512
2345
  | void
1513
2346
  | Promise<GaxiosResponseWithHTTP2<Schema$Catalog>>
@@ -1630,8 +2463,7 @@ export namespace biglake_v1 {
1630
2463
  list(
1631
2464
  params: Params$Resource$Projects$Locations$Catalogs$List,
1632
2465
  options:
1633
- | MethodOptions
1634
- | BodyResponseCallback<Schema$ListCatalogsResponse>,
2466
+ MethodOptions | BodyResponseCallback<Schema$ListCatalogsResponse>,
1635
2467
  callback: BodyResponseCallback<Schema$ListCatalogsResponse>
1636
2468
  ): void;
1637
2469
  list(
@@ -1865,8 +2697,7 @@ export namespace biglake_v1 {
1865
2697
  | BodyResponseCallback<Schema$Database>
1866
2698
  | BodyResponseCallback<Readable>,
1867
2699
  callback?:
1868
- | BodyResponseCallback<Schema$Database>
1869
- | BodyResponseCallback<Readable>
2700
+ BodyResponseCallback<Schema$Database> | BodyResponseCallback<Readable>
1870
2701
  ):
1871
2702
  | void
1872
2703
  | Promise<GaxiosResponseWithHTTP2<Schema$Database>>
@@ -2012,8 +2843,7 @@ export namespace biglake_v1 {
2012
2843
  | BodyResponseCallback<Schema$Database>
2013
2844
  | BodyResponseCallback<Readable>,
2014
2845
  callback?:
2015
- | BodyResponseCallback<Schema$Database>
2016
- | BodyResponseCallback<Readable>
2846
+ BodyResponseCallback<Schema$Database> | BodyResponseCallback<Readable>
2017
2847
  ):
2018
2848
  | void
2019
2849
  | Promise<GaxiosResponseWithHTTP2<Schema$Database>>
@@ -2156,8 +2986,7 @@ export namespace biglake_v1 {
2156
2986
  | BodyResponseCallback<Schema$Database>
2157
2987
  | BodyResponseCallback<Readable>,
2158
2988
  callback?:
2159
- | BodyResponseCallback<Schema$Database>
2160
- | BodyResponseCallback<Readable>
2989
+ BodyResponseCallback<Schema$Database> | BodyResponseCallback<Readable>
2161
2990
  ):
2162
2991
  | void
2163
2992
  | Promise<GaxiosResponseWithHTTP2<Schema$Database>>
@@ -2281,8 +3110,7 @@ export namespace biglake_v1 {
2281
3110
  list(
2282
3111
  params: Params$Resource$Projects$Locations$Catalogs$Databases$List,
2283
3112
  options:
2284
- | MethodOptions
2285
- | BodyResponseCallback<Schema$ListDatabasesResponse>,
3113
+ MethodOptions | BodyResponseCallback<Schema$ListDatabasesResponse>,
2286
3114
  callback: BodyResponseCallback<Schema$ListDatabasesResponse>
2287
3115
  ): void;
2288
3116
  list(
@@ -2464,8 +3292,7 @@ export namespace biglake_v1 {
2464
3292
  | BodyResponseCallback<Schema$Database>
2465
3293
  | BodyResponseCallback<Readable>,
2466
3294
  callback?:
2467
- | BodyResponseCallback<Schema$Database>
2468
- | BodyResponseCallback<Readable>
3295
+ BodyResponseCallback<Schema$Database> | BodyResponseCallback<Readable>
2469
3296
  ):
2470
3297
  | void
2471
3298
  | Promise<GaxiosResponseWithHTTP2<Schema$Database>>
@@ -2693,8 +3520,7 @@ export namespace biglake_v1 {
2693
3520
  | BodyResponseCallback<Schema$Table>
2694
3521
  | BodyResponseCallback<Readable>,
2695
3522
  callback?:
2696
- | BodyResponseCallback<Schema$Table>
2697
- | BodyResponseCallback<Readable>
3523
+ BodyResponseCallback<Schema$Table> | BodyResponseCallback<Readable>
2698
3524
  ):
2699
3525
  | void
2700
3526
  | Promise<GaxiosResponseWithHTTP2<Schema$Table>>
@@ -2843,8 +3669,7 @@ export namespace biglake_v1 {
2843
3669
  | BodyResponseCallback<Schema$Table>
2844
3670
  | BodyResponseCallback<Readable>,
2845
3671
  callback?:
2846
- | BodyResponseCallback<Schema$Table>
2847
- | BodyResponseCallback<Readable>
3672
+ BodyResponseCallback<Schema$Table> | BodyResponseCallback<Readable>
2848
3673
  ):
2849
3674
  | void
2850
3675
  | Promise<GaxiosResponseWithHTTP2<Schema$Table>>
@@ -2988,8 +3813,7 @@ export namespace biglake_v1 {
2988
3813
  | BodyResponseCallback<Schema$Table>
2989
3814
  | BodyResponseCallback<Readable>,
2990
3815
  callback?:
2991
- | BodyResponseCallback<Schema$Table>
2992
- | BodyResponseCallback<Readable>
3816
+ BodyResponseCallback<Schema$Table> | BodyResponseCallback<Readable>
2993
3817
  ):
2994
3818
  | void
2995
3819
  | Promise<GaxiosResponseWithHTTP2<Schema$Table>>
@@ -3299,8 +4123,7 @@ export namespace biglake_v1 {
3299
4123
  | BodyResponseCallback<Schema$Table>
3300
4124
  | BodyResponseCallback<Readable>,
3301
4125
  callback?:
3302
- | BodyResponseCallback<Schema$Table>
3303
- | BodyResponseCallback<Readable>
4126
+ BodyResponseCallback<Schema$Table> | BodyResponseCallback<Readable>
3304
4127
  ):
3305
4128
  | void
3306
4129
  | Promise<GaxiosResponseWithHTTP2<Schema$Table>>
@@ -3454,8 +4277,7 @@ export namespace biglake_v1 {
3454
4277
  | BodyResponseCallback<Schema$Table>
3455
4278
  | BodyResponseCallback<Readable>,
3456
4279
  callback?:
3457
- | BodyResponseCallback<Schema$Table>
3458
- | BodyResponseCallback<Readable>
4280
+ BodyResponseCallback<Schema$Table> | BodyResponseCallback<Readable>
3459
4281
  ):
3460
4282
  | void
3461
4283
  | Promise<GaxiosResponseWithHTTP2<Schema$Table>>