import { AxiosInstance } from 'axios'; import { GroupData, GroupQuery, GroupSearchQuery, GroupSubscriberData, GroupSubscriberFlags, SubscriberGroupQuery, SubscriberType } from '../@types'; export interface MailerLiteGroup { id: number; name: string; total: number; active: number; unsubscribed: number; bounced: number; unconfirmed: number; junk: number; sent: number; opened: number; clicked: number; parentId: number; dateCreated: string; dateUpdated: string; } export default function (client: AxiosInstance): { getGroups(params?: GroupQuery): Promise; searchGroups(groupName: GroupSearchQuery['group_name']): Promise; getGroup(groupId: number): Promise; createGroup(group: GroupData): Promise; updateGroup(groupId: number, groupUpdate: GroupData): Promise>; removeGroup(groupId: number): Promise<{ success: boolean; }>; addSubscriberToGroup(groupId: number, subscriber: GroupSubscriberData): Promise>; addSubscribersToGroup(groupId: number, subscribers: GroupSubscriberData[], importOptions?: GroupSubscriberFlags): Promise>; getSubscribersGroupImport(groupId: number, importId: number): Promise>; getGroupSubscriber(groupId: number, subscriberId: number): Promise>; getGroupSubscribers(groupId: number, params?: SubscriberGroupQuery): Promise>; getGroupSubscriberCount(groupId: number): Promise; getGroupSubscribersByType(groupId: number, subscriberType: SubscriberType, params?: GroupQuery): Promise>; getGroupSubscribersCountByType(groupId: number, subscriberType: SubscriberType): Promise; removeGroupSubscriber(groupId: number, subscriberIdentifier: number | string): Promise; };