import { Authentication, Interceptor, ApiKeyAuth, CreateGroupContactResponse, GetGroupContactDetails, GroupContactDetails, GroupContactsList, UpdateGroupContact } from '../model';
import { optionsI, returnTypeI } from './';
export declare class GroupContactsApi {
    protected _basePath: string;
    protected _defaultHeaders: any;
    protected _useQuerystring: boolean;
    protected authentications: {
        default: Authentication;
        Bearer: ApiKeyAuth;
        'X-API-KEY': ApiKeyAuth;
    };
    protected interceptors: Interceptor[];
    constructor(basePath?: string);
    set useQuerystring(value: boolean);
    set basePath(basePath: string);
    set defaultHeaders(defaultHeaders: any);
    get defaultHeaders(): any;
    get basePath(): string;
    setDefaultAuthentication(auth: Authentication): void;
    setApiKey(apikey: string): void;
    setAccessToken(accessToken: string): void;
    addInterceptor(interceptor: Interceptor): void;
    createGroupContact(groupContactDetails?: GroupContactDetails, options?: optionsI): Promise<CreateGroupContactResponse>;
    deleteGroupContact(groupId: string, options?: optionsI): Promise<returnTypeI>;
    getGroupContact(groupId: string, options?: optionsI): Promise<GetGroupContactDetails>;
    groupContactList(page: number, pageSize?: number, searchKey?: string, contactType?: 'MyContacts' | 'AllContacts', directories?: Array<string>, options?: optionsI): Promise<GroupContactsList>;
    updateGroupContact(groupId: string, updateGroupContact: UpdateGroupContact, options?: optionsI): Promise<returnTypeI>;
}
