import { ApiClient } from '../../client/index.js';
import { ListAttributesParams } from './requests.js';
import { ListAttributesResult, ListAttributeVocabularyResult } from './responses.js';

declare class AttributesApi {
    private _client;
    /**
     * Create an instance of the AttributesApi class.
     *
     * The Attributes API lists all product attributes that have been configured in Entries, and all controlled vocabulary values for any single-select or multi-select attribute
     *
     * @param client Provide an instance of ApiClient.
     */
    constructor(client: ApiClient);
    /**
     * Retrieve a list of attributes
     * @param params Information about the request
     * @returns Promise containing a list of attributes
     * @see {@link https://widenv2.docs.apiary.io/#reference/attributes/attributes/list-attributes}
     */
    listAttributes(params?: ListAttributesParams): Promise<ListAttributesResult>;
    /**
     * List the vocabulary for a single-select or multi-select attribute
     * @param id Attribute ID
     * @returns Promise containing the vocabulary for the provided attribute field
     * @see {@link https://widenv2.docs.apiary.io/#reference/attributes/attributes/list-vocabulary}
     */
    listAttributeVocabulary(id: string): Promise<ListAttributeVocabularyResult>;
}

export { AttributesApi };
