import type { CreateGroupContact } from '../models/CreateGroupContact';
import type { ResponseEmpty } from '../models/ResponseEmpty';
import type { ResponseGroupContact } from '../models/ResponseGroupContact';
import type { UpdateGroupContact } from '../models/UpdateGroupContact';
export declare class GroupContactService {
    /**
     * Get all
     * Lists all contacts. <br> This includes the contact's associated groups.
     * @result ResponseGroupContact
     * @throws ApiError
     */
    static groupContactControllerGetAll(): Promise<Array<ResponseGroupContact>>;
    /**
     * Post
     * Create a new contact.
     * @param requestBody CreateGroupContact
     * @result ResponseGroupContact
     * @throws ApiError
     */
    static groupContactControllerPost(requestBody?: CreateGroupContact): Promise<ResponseGroupContact>;
    /**
     * Get one
     * Lists all information about the contact whose id got provided. <br> This includes the contact's associated groups.
     * @param id
     * @result ResponseGroupContact
     * @throws ApiError
     */
    static groupContactControllerGetOne(id: number): Promise<ResponseGroupContact>;
    /**
     * Put
     * Update the contact whose id you provided. <br> Please remember that ids can't be changed.
     * @param id
     * @param requestBody UpdateGroupContact
     * @result ResponseGroupContact
     * @throws ApiError
     */
    static groupContactControllerPut(id: number, requestBody?: UpdateGroupContact): Promise<ResponseGroupContact>;
    /**
     * Remove
     * Delete the contact whose id you provided. <br> If no contact with this id exists it will just return 204(no content). <br> This won't delete any groups associated with the contact.
     * @param id
     * @param force
     * @result ResponseGroupContact
     * @result ResponseEmpty
     * @throws ApiError
     */
    static groupContactControllerRemove(id: number, force?: boolean): Promise<ResponseGroupContact | ResponseEmpty>;
}
