import { APIResource } from "../../../core/resource.js"; import * as BillingProvidersAPI from "./billing-providers.js"; import { BillingProviderCreateParams, BillingProviderCreateResponse, BillingProviderListParams, BillingProviderListResponse, BillingProviders } from "./billing-providers.js"; import { APIPromise } from "../../../core/api-promise.js"; import { RequestOptions } from "../../../internal/request-options.js"; /** * Use these endpoints to configure a billing API key, a webhook secret, or invoice finalization behavior. */ export declare class Settings extends APIResource { billingProviders: BillingProvidersAPI.BillingProviders; /** * Set the Avalara credentials for some specified `delivery_method_ids`, which can * be found in the `/listConfiguredBillingProviders` response. This maps the * Avalara credentials to the appropriate billing entity. These credentials are * only used for PLG Invoicing today. * * @example * ```ts * const response = * await client.v1.settings.upsertAvalaraCredentials({ * avalara_environment: 'PRODUCTION', * avalara_password: 'my_password_123', * avalara_username: 'test@metronome.com', * delivery_method_ids: [ * '9a906ebb-fbc7-42e8-8e29-53bfd2db3aca', * ], * commit_transactions: true, * }); * ``` */ upsertAvalaraCredentials(body: SettingUpsertAvalaraCredentialsParams, options?: RequestOptions): APIPromise; } export interface SettingUpsertAvalaraCredentialsResponse { } export interface SettingUpsertAvalaraCredentialsParams { /** * The Avalara environment to use (SANDBOX or PRODUCTION). */ avalara_environment: 'PRODUCTION' | 'SANDBOX'; /** * The password for the Avalara account. */ avalara_password: string; /** * The username for the Avalara account. */ avalara_username: string; /** * The delivery method IDs of the billing provider configurations to update, can be * found in the response of the `/listConfiguredBillingProviders` endpoint. */ delivery_method_ids: Array; /** * Commit transactions if you want Metronome tax calculations used for reporting * and tax filings. */ commit_transactions?: boolean; } export declare namespace Settings { export { type SettingUpsertAvalaraCredentialsResponse as SettingUpsertAvalaraCredentialsResponse, type SettingUpsertAvalaraCredentialsParams as SettingUpsertAvalaraCredentialsParams, }; export { BillingProviders as BillingProviders, type BillingProviderCreateResponse as BillingProviderCreateResponse, type BillingProviderListResponse as BillingProviderListResponse, type BillingProviderCreateParams as BillingProviderCreateParams, type BillingProviderListParams as BillingProviderListParams, }; } //# sourceMappingURL=settings.d.ts.map