/** * This file was auto-generated by Fern from our API Definition. */ import * as environments from "../../../../environments"; import * as core from "../../../../core"; import * as Abound from "../../../index"; export declare namespace FormW9 { interface Options { environment?: core.Supplier; /** Specify a custom URL to connect the client to. */ baseUrl?: core.Supplier; apiKey: core.Supplier; 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; } } export declare class FormW9 { protected readonly _options: FormW9.Options; constructor(_options: FormW9.Options); /** * Returns a list of W-9 documents. * * @param {Abound.FormW9ListRequest} request * @param {FormW9.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Abound.types.BadRequestErrorSchema} * @throws {@link Abound.types.UnauthorizedErrorSchema} * @throws {@link Abound.types.NotFoundErrorSchema} * @throws {@link Abound.types.InternalServerErrorSchema} * * @example * await client.formW9.list() */ list(request?: Abound.FormW9ListRequest, requestOptions?: FormW9.RequestOptions): Promise; /** * Creates a W-9 document and subsequently kicks off a TIN verification, if the name and TIN combo has not been used before. * * @param {Abound.FormW9RequestSchema} request * @param {FormW9.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Abound.types.BadRequestErrorSchema} * @throws {@link Abound.types.UnauthorizedErrorSchema} * @throws {@link Abound.types.NotFoundErrorSchema} * @throws {@link Abound.types.InternalServerErrorSchema} * * @example * await client.formW9.create({ * body: { * payee: { * name: "Ada Lovelace", * address: "1401 N Shoreline Blvd", * address2: "Suite 1", * city: "Mountain View", * country: "US", * postalCode: "94043", * state: "CA", * tin: "000000000", * tinType: "INDIVIDUAL" * }, * formFields: { * taxClassification: "INDIVIDUAL", * isSubjectToBackupWithholding: false, * electronicSignature: { * signature: "Ada Lovelace", * printedName: "Ada Lovelace", * signedAt: "2024-01-01T00:00:00.000Z", * ipAddress: "127.0.0.1" * } * } * } * }) */ create(request: Abound.FormW9RequestSchema, requestOptions?: FormW9.RequestOptions): Promise; /** * Retrieves the details of an existing W-9 document. * * @param {Abound.types.DocumentId} documentId * @param {FormW9.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Abound.types.BadRequestErrorSchema} * @throws {@link Abound.types.UnauthorizedErrorSchema} * @throws {@link Abound.types.NotFoundErrorSchema} * @throws {@link Abound.types.InternalServerErrorSchema} * * @example * await client.formW9.retrieve("documentId_sampleVppNzzIbQT") */ retrieve(documentId: Abound.types.DocumentId, requestOptions?: FormW9.RequestOptions): Promise; protected _getAuthorizationHeader(): Promise; }