/** * This file was auto-generated by Fern from our API Definition. */ import * as environments from "../../../../environments.js"; import * as core from "../../../../core/index.js"; import * as Klavis from "../../../index.js"; export declare namespace GoogleFormsOauth { interface Options { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; apiKey?: core.Supplier; /** Additional headers to include in requests. */ headers?: Record | undefined>; fetcher?: core.FetchFunction; } interface RequestOptions { /** The maximum time to wait for a response in seconds. */ timeoutInSeconds?: number; /** The number of times to retry the request. Defaults to 2. */ maxRetries?: number; /** A hook to abort the request. */ abortSignal?: AbortSignal; /** Additional headers to include in the request. */ headers?: Record | undefined>; } } export declare class GoogleFormsOauth { protected readonly _options: GoogleFormsOauth.Options; constructor(_options?: GoogleFormsOauth.Options); /** * Start Google Forms OAuth flow * * Parameters: * - instance_id: Identifier for the instance requesting authorization * - client_id: Optional client ID for white labeling * - scope: Optional scopes to request (comma-separated) * - redirect_url: Optional URL to redirect to after authorization completes * * @param {Klavis.AuthorizeGoogleFormsRequest} request * @param {GoogleFormsOauth.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Klavis.UnprocessableEntityError} * * @example * await client.googleFormsOauth.authorizeGoogleForms({ * instance_id: "instance_id", * client_id: "client_id", * scope: "scope", * redirect_url: "redirect_url" * }) */ authorizeGoogleForms(request: Klavis.AuthorizeGoogleFormsRequest, requestOptions?: GoogleFormsOauth.RequestOptions): core.HttpResponsePromise; private __authorizeGoogleForms; protected _getAuthorizationHeader(): Promise; }