/**
 * This file was auto-generated by Fern from our API Definition.
 */
import * as environments from "./environments";
import * as core from "./core";
import { Mobile } from "./api/resources/mobile/client/Client";
import { OAuth } from "./api/resources/oAuth/client/Client";
import { V1Transactions } from "./api/resources/v1Transactions/client/Client";
import { ApplePay } from "./api/resources/applePay/client/Client";
import { BankAccounts } from "./api/resources/bankAccounts/client/Client";
import { Bookings } from "./api/resources/bookings/client/Client";
import { Cards } from "./api/resources/cards/client/Client";
import { Catalog } from "./api/resources/catalog/client/Client";
import { Customers } from "./api/resources/customers/client/Client";
import { Devices } from "./api/resources/devices/client/Client";
import { Disputes } from "./api/resources/disputes/client/Client";
import { Employees } from "./api/resources/employees/client/Client";
import { Events } from "./api/resources/events/client/Client";
import { GiftCards } from "./api/resources/giftCards/client/Client";
import { Inventory } from "./api/resources/inventory/client/Client";
import { Invoices } from "./api/resources/invoices/client/Client";
import { Labor } from "./api/resources/labor/client/Client";
import { Locations } from "./api/resources/locations/client/Client";
import { Loyalty } from "./api/resources/loyalty/client/Client";
import { Merchants } from "./api/resources/merchants/client/Client";
import { Checkout } from "./api/resources/checkout/client/Client";
import { Orders } from "./api/resources/orders/client/Client";
import { Payments } from "./api/resources/payments/client/Client";
import { Payouts } from "./api/resources/payouts/client/Client";
import { Refunds } from "./api/resources/refunds/client/Client";
import { Sites } from "./api/resources/sites/client/Client";
import { Snippets } from "./api/resources/snippets/client/Client";
import { Subscriptions } from "./api/resources/subscriptions/client/Client";
import { TeamMembers } from "./api/resources/teamMembers/client/Client";
import { Team } from "./api/resources/team/client/Client";
import { Terminal } from "./api/resources/terminal/client/Client";
import { Vendors } from "./api/resources/vendors/client/Client";
import { CashDrawers } from "./api/resources/cashDrawers/client/Client";
import { Webhooks } from "./api/resources/webhooks/client/Client";
export declare namespace SquareClient {
    interface Options {
        environment?: core.Supplier<environments.SquareEnvironment | string>;
        /** Specify a custom URL to connect the client to. */
        baseUrl?: core.Supplier<string>;
        token?: core.Supplier<core.BearerToken | undefined>;
        /** Override the Square-Version header */
        version?: "2025-09-24";
        /** Additional headers to include in requests. */
        headers?: Record<string, string | core.Supplier<string | undefined> | 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;
        /** Override the Square-Version header */
        version?: "2025-09-24";
        /** Additional headers to include in the request. */
        headers?: Record<string, string | core.Supplier<string | undefined> | undefined>;
    }
}
export declare class SquareClient {
    protected readonly _options: SquareClient.Options;
    protected _mobile: Mobile | undefined;
    protected _oAuth: OAuth | undefined;
    protected _v1Transactions: V1Transactions | undefined;
    protected _applePay: ApplePay | undefined;
    protected _bankAccounts: BankAccounts | undefined;
    protected _bookings: Bookings | undefined;
    protected _cards: Cards | undefined;
    protected _catalog: Catalog | undefined;
    protected _customers: Customers | undefined;
    protected _devices: Devices | undefined;
    protected _disputes: Disputes | undefined;
    protected _employees: Employees | undefined;
    protected _events: Events | undefined;
    protected _giftCards: GiftCards | undefined;
    protected _inventory: Inventory | undefined;
    protected _invoices: Invoices | undefined;
    protected _labor: Labor | undefined;
    protected _locations: Locations | undefined;
    protected _loyalty: Loyalty | undefined;
    protected _merchants: Merchants | undefined;
    protected _checkout: Checkout | undefined;
    protected _orders: Orders | undefined;
    protected _payments: Payments | undefined;
    protected _payouts: Payouts | undefined;
    protected _refunds: Refunds | undefined;
    protected _sites: Sites | undefined;
    protected _snippets: Snippets | undefined;
    protected _subscriptions: Subscriptions | undefined;
    protected _teamMembers: TeamMembers | undefined;
    protected _team: Team | undefined;
    protected _terminal: Terminal | undefined;
    protected _vendors: Vendors | undefined;
    protected _cashDrawers: CashDrawers | undefined;
    protected _webhooks: Webhooks | undefined;
    constructor(_options?: SquareClient.Options);
    get mobile(): Mobile;
    get oAuth(): OAuth;
    get v1Transactions(): V1Transactions;
    get applePay(): ApplePay;
    get bankAccounts(): BankAccounts;
    get bookings(): Bookings;
    get cards(): Cards;
    get catalog(): Catalog;
    get customers(): Customers;
    get devices(): Devices;
    get disputes(): Disputes;
    get employees(): Employees;
    get events(): Events;
    get giftCards(): GiftCards;
    get inventory(): Inventory;
    get invoices(): Invoices;
    get labor(): Labor;
    get locations(): Locations;
    get loyalty(): Loyalty;
    get merchants(): Merchants;
    get checkout(): Checkout;
    get orders(): Orders;
    get payments(): Payments;
    get payouts(): Payouts;
    get refunds(): Refunds;
    get sites(): Sites;
    get snippets(): Snippets;
    get subscriptions(): Subscriptions;
    get teamMembers(): TeamMembers;
    get team(): Team;
    get terminal(): Terminal;
    get vendors(): Vendors;
    get cashDrawers(): CashDrawers;
    get webhooks(): Webhooks;
}
