import { EventDefinition, HttpClient } from '@wix/sdk-types'; import { ContactLabel, ContactLabelNonNullableFields, FindOrCreateLabelOptions, FindOrCreateLabelResponse, FindOrCreateLabelResponseNonNullableFields, GetLabelOptions, LabelCreatedEnvelope, LabelDeletedEnvelope, LabelUpdatedEnvelope, LabelsQueryBuilder, QueryLabelsOptions, RenameLabel, RenameLabelOptions } from './contacts-v4-label-labels.universal.js'; export declare const __metadata: { PACKAGE_NAME: string; }; export declare function findOrCreateLabel(httpClient: HttpClient): FindOrCreateLabelSignature; interface FindOrCreateLabelSignature { /** * Retrieves a label with a specified name, or creates one if it doesn't exist. * * Successful calls to this method always return a label, * which can be specified in subsequent calls. * * For example, in the Contacts API, Label Contact and Unlabel Contact * calls will fail if you include a non-existent label. * To ensure successful calls, you can call this method first, * and then use the response in the Label Contact and Unlabel Contact calls. * * To find an existing label without potentially creating a new one, call * Get Label or Query Labels. * @param - Display name to retrieve or create. * * If an existing label is an exact match * for the specified display name, * the existing label is returned. * If not, a new label is created and returned. * @param - Language options. * @returns Label that was found or created. */ (displayName: string, options?: FindOrCreateLabelOptions | undefined): Promise; } export declare function getLabel(httpClient: HttpClient): GetLabelSignature; interface GetLabelSignature { /** * Retrieves a label by the specified label key. * @param - Label key. * * `key` is generated when the label is created. * It can't be modified, even if `displayName` is updated. * @param - Language options. * @returns The specified label. */ (key: string, options?: GetLabelOptions | undefined): Promise; } export declare function renameLabel(httpClient: HttpClient): RenameLabelSignature; interface RenameLabelSignature { /** * Renames a label. * @param - Label key. * * `key` is generated when the label is created. * It can't be modified, even if `displayName` is updated. * @param - Language options. * @param - Label to rename. * @returns Renamed label. */ (key: string, label: RenameLabel, options?: RenameLabelOptions | undefined): Promise; } export declare function deleteLabel(httpClient: HttpClient): DeleteLabelSignature; interface DeleteLabelSignature { /** * Deletes the specified label from a site and removes it from the contacts it applies to. * @param - Label key to delete. */ (key: string): Promise; } export declare function queryLabels(httpClient: HttpClient): QueryLabelsSignature; interface QueryLabelsSignature { /** * Creates a query to retrieve a list of labels. * * The `queryLabels()` method builds a query to retrieve a list of labels and returns a `LabelsQueryBuilder` object. * * The returned object contains the query definition, which is used to call the query using the `find()` method. * * You can refine the query by chaining `LabelsQueryBuilder` methods onto the query. `LabelsQueryBuilder` methods enable you to filter, sort, and control the response that `queryLabels()` returns. * * `queryLabels()` is called with the following `LabelsQueryBuilder` defaults, which you can override: * - `skip(0)` * - `limit(50)` * - `descending('_createdDate')` * * The following `LabelsQueryBuilder` methods are supported for `queryLabels()`. For a full description of the `Labels` object, see the object returned for the `items` field in `LabelsQueryResult`. * * * @param - Language options. */ (options?: QueryLabelsOptions | undefined): LabelsQueryBuilder; } export declare const onLabelCreated: EventDefinition; export declare const onLabelDeleted: EventDefinition; export declare const onLabelUpdated: EventDefinition; export { ActionEvent, BaseEventMetadata, ContactLabel, ContactLabelNamespace, ContactLabelNonNullableFields, DeleteLabelRequest, DeleteLabelResponse, DomainEvent, DomainEventBodyOneOf, EntityCreatedEvent, EntityDeletedEvent, EntityUpdatedEvent, EventMetadata, FindOrCreateLabelOptions, FindOrCreateLabelRequest, FindOrCreateLabelResponse, FindOrCreateLabelResponseNonNullableFields, GdprListRequest, GdprListResponse, GetLabelByLegacyIdRequest, GetLabelByLegacyIdResponse, GetLabelOptions, GetLabelRequest, GetLabelResponse, GetLabelResponseNonNullableFields, IdentificationData, IdentificationDataIdOneOf, LabelCreatedEnvelope, LabelDeletedEnvelope, LabelType, LabelUpdatedEnvelope, LabelsQueryBuilder, LabelsQueryResult, LabelsQuotaReached, ListLabelNamespacesRequest, ListLabelNamespacesResponse, ListLabelsRequest, ListLabelsResponse, MessageEnvelope, Paging, PagingMetadata, PurgeRequest, PurgeResponse, Query, QueryLabelsOptions, QueryLabelsRequest, QueryLabelsResponse, QueryLabelsResponseNonNullableFields, RenameLabel, RenameLabelOptions, RestoreInfo, SortOrder, Sorting, UpdateLabelRequest, UpdateLabelResponse, UpdateLabelResponseNonNullableFields, WebhookIdentityType, } from './contacts-v4-label-labels.universal.js';