import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient.mjs"; import * as core from "../../../../core/index.mjs"; import * as Pinnacle from "../../../index.mjs"; export declare namespace Brands { interface Options extends BaseClientOptions { } interface RequestOptions extends BaseRequestOptions { } } export declare class Brands { protected readonly _options: Brands.Options; constructor(_options: Brands.Options); /** * Automatically populate brand information based on partial input data you provide. * * @param {Pinnacle.AutofillBrandParams} request * @param {Brands.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Pinnacle.BadRequestError} * @throws {@link Pinnacle.UnauthorizedError} * @throws {@link Pinnacle.ForbiddenError} * @throws {@link Pinnacle.InternalServerError} * * @example * await client.brands.autofill({ * additional_info: "A developer-friendly, compliant API for SMS, MMS, and RCS, built to scale real conversations.", * name: "Pinnacle", * options: { * forceReload: true * }, * website: "https://www.pinnacle.sh" * }) */ autofill(request?: Pinnacle.AutofillBrandParams, requestOptions?: Brands.RequestOptions): core.HttpResponsePromise; private __autofill; /** * Create a new brand or update an existing one. * * * **To create a new brand:** Omit `id` — one will be generated automatically. * * All fields are **required** except `description` and `dba`, and will be validated when [submitted](/api-reference/brands/submit). * * * @param {Pinnacle.UpsertBrandParams} request * @param {Brands.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Pinnacle.BadRequestError} * @throws {@link Pinnacle.UnauthorizedError} * @throws {@link Pinnacle.ForbiddenError} * @throws {@link Pinnacle.InternalServerError} * * @example * await client.brands.upsert({ * address: "500 Folsom St, San Francisco, CA 94105", * contact: { * email: "michael.chen@trypinnacle.app", * name: "Michael Chen", * phone: "+14155551234", * title: "Customer Support Representative" * }, * dba: "Pinnacle RCS", * description: "A developer-friendly, compliant API for SMS, MMS, and RCS, built to scale real conversations.", * ein: "88-1234567", * email: "founders@trypinnacle.app", * id: "b_1234567890", * name: "Pinnacle", * sector: "TECHNOLOGY", * type: "PRIVATE_PROFIT", * entityType: "LLC", * website: "https://www.pinnacle.sh" * }) */ upsert(request?: Pinnacle.UpsertBrandParams, requestOptions?: Brands.RequestOptions): core.HttpResponsePromise; private __upsert; /** * Retrieve detailed information for a specific brand in your account by ID. * * @param {string} id - The unique identifier of the brand you want to retrieve from your account. *

This identifier is a string that always begins with the prefix `b_`, for example: `b_1234567890`. * @param {Pinnacle.BrandsGetRequest} request * @param {Brands.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Pinnacle.BadRequestError} * @throws {@link Pinnacle.UnauthorizedError} * @throws {@link Pinnacle.ForbiddenError} * @throws {@link Pinnacle.NotFoundError} * @throws {@link Pinnacle.InternalServerError} * * @example * await client.brands.get("b_1234567890") */ get(id: string, request?: Pinnacle.BrandsGetRequest, requestOptions?: Brands.RequestOptions): core.HttpResponsePromise; private __get; /** * Submit your brand for review and approval by the compliance team. * * @param {string} brandId - The unique identifier of the brand you want to submit for review.

* This identifier is a string that always begins with the prefix `b_`, for example: `b_1234567890` and must correspond to an existing brand in your account that is ready for submission. * @param {Brands.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Pinnacle.BadRequestError} * @throws {@link Pinnacle.UnauthorizedError} * @throws {@link Pinnacle.PaymentRequiredError} * @throws {@link Pinnacle.ForbiddenError} * @throws {@link Pinnacle.NotFoundError} * @throws {@link Pinnacle.InternalServerError} * @throws {@link Pinnacle.NotImplementedError} * * @example * await client.brands.submit("b_1234567890") */ submit(brandId: string, requestOptions?: Brands.RequestOptions): core.HttpResponsePromise; private __submit; /** * Validate your brand information for compliance and correctness before submission or storage. * * @param {Pinnacle.OptionalBrandInfo} request * @param {Brands.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Pinnacle.BadRequestError} * @throws {@link Pinnacle.UnauthorizedError} * @throws {@link Pinnacle.ForbiddenError} * @throws {@link Pinnacle.InternalServerError} * * @example * await client.brands.validate({}) */ validate(request: Pinnacle.OptionalBrandInfo, requestOptions?: Brands.RequestOptions): core.HttpResponsePromise; private __validate; /** * Submit a brand for external vetting verification to enhance your brand's trust score and improved message delivery rates. * * @param {string} brandId - The unique identifier of the brand to vet.
* * This identifier is a string that always begins with the prefix `b_`, for example: `b_1234567890` and must correspond to an existing brand in your account that is ready for vetting. * @param {Pinnacle.VetBrandParams} request * @param {Brands.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Pinnacle.BadRequestError} * @throws {@link Pinnacle.UnauthorizedError} * @throws {@link Pinnacle.PaymentRequiredError} * @throws {@link Pinnacle.ForbiddenError} * @throws {@link Pinnacle.NotFoundError} * @throws {@link Pinnacle.InternalServerError} * @throws {@link Pinnacle.NotImplementedError} * * @example * await client.brands.vet("b_1234567890", {}) */ vet(brandId: string, request: Pinnacle.VetBrandParams, requestOptions?: Brands.RequestOptions): core.HttpResponsePromise; private __vet; /** * List all brands with optional filtering and pagination. Results are sorted by creation date, newest first. * * @param {Pinnacle.ListBrandsParams} request * @param {Brands.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Pinnacle.BadRequestError} * @throws {@link Pinnacle.UnauthorizedError} * @throws {@link Pinnacle.InternalServerError} * * @example * await client.brands.list() */ list(request?: Pinnacle.ListBrandsParams, requestOptions?: Brands.RequestOptions): core.HttpResponsePromise; private __list; protected _getCustomAuthorizationHeaders(): Promise>; }