// File generated from our OpenAPI spec by Stainless.
import { APIResource } from 'cloudflare/resource';
import * as AuditLogsAPI from 'cloudflare/resources/user/audit-logs';
import * as InvitesAPI from 'cloudflare/resources/user/invites';
import * as OrganizationsAPI from 'cloudflare/resources/user/organizations';
import * as SubscriptionsAPI from 'cloudflare/resources/user/subscriptions';
import * as BillingAPI from 'cloudflare/resources/user/billing/billing';
import * as FirewallAPI from 'cloudflare/resources/user/firewall/firewall';
import * as LoadBalancersAPI from 'cloudflare/resources/user/load-balancers/load-balancers';
import * as TokensAPI from 'cloudflare/resources/user/tokens/tokens';
export class UserResource extends APIResource {
    constructor() {
        super(...arguments);
        this.auditLogs = new AuditLogsAPI.AuditLogs(this._client);
        this.billing = new BillingAPI.Billing(this._client);
        this.firewall = new FirewallAPI.Firewall(this._client);
        this.invites = new InvitesAPI.Invites(this._client);
        this.loadBalancers = new LoadBalancersAPI.LoadBalancers(this._client);
        this.organizations = new OrganizationsAPI.Organizations(this._client);
        this.subscriptions = new SubscriptionsAPI.Subscriptions(this._client);
        this.tokens = new TokensAPI.Tokens(this._client);
    }
    /**
     * Edit part of your user details.
     */
    edit(body, options) {
        return this._client.patch('/user', { body, ...options })._thenUnwrap((obj) => obj.result);
    }
    /**
     * User Details
     */
    get(options) {
        return this._client.get('/user', options)._thenUnwrap((obj) => obj.result);
    }
}
(function (UserResource) {
    UserResource.AuditLogs = AuditLogsAPI.AuditLogs;
    UserResource.AuditLogListResponsesV4PagePaginationArray = AuditLogsAPI.AuditLogListResponsesV4PagePaginationArray;
    UserResource.Billing = BillingAPI.Billing;
    UserResource.Firewall = FirewallAPI.Firewall;
    UserResource.Invites = InvitesAPI.Invites;
    UserResource.LoadBalancers = LoadBalancersAPI.LoadBalancers;
    UserResource.Organizations = OrganizationsAPI.Organizations;
    UserResource.IamOrganizationsV4PagePaginationArray = OrganizationsAPI.IamOrganizationsV4PagePaginationArray;
    UserResource.Subscriptions = SubscriptionsAPI.Subscriptions;
    UserResource.Tokens = TokensAPI.Tokens;
    UserResource.TokenListResponsesV4PagePaginationArray = TokensAPI.TokenListResponsesV4PagePaginationArray;
})(UserResource || (UserResource = {}));
//# sourceMappingURL=user.mjs.map