/// <reference types="bluebird" />
import * as Promise from 'bluebird';
import { HudAiCreateAttributes, HudAiListAttributes, HudAiUpdateAttributes, Resource } from '../utils/Resource';
import { RequestManager } from '../RequestManager';
import { UserContact } from '../entities';
export interface UserContactListAttributes extends HudAiListAttributes {
    userId?: string;
    companyId?: string;
}
export interface UserContactCreateAttributes extends HudAiCreateAttributes {
    userId?: string;
    companyId: string;
    name: string;
    email?: string;
    phoneNumber?: string;
}
export interface UserContactUpdateAttributes extends HudAiUpdateAttributes {
    userId?: string;
    companyId?: string;
    name?: string;
    email?: string;
    phoneNumber?: string;
}
export interface UserContactDestroyAttributes {
    userId?: string;
    id: string;
}
export declare class UserContactResource extends Resource<UserContact, UserContactListAttributes, UserContactCreateAttributes, UserContactUpdateAttributes> {
    constructor(requestManager: RequestManager);
    list(listArgs: UserContactListAttributes): Promise<{
        count: number;
        rows: UserContact[];
    }>;
    create(createArgs: UserContactCreateAttributes): Promise<UserContact>;
    get(id: string): Promise<UserContact>;
    update(id: string, updateArgs: UserContactUpdateAttributes): Promise<UserContact>;
    del(id: string): Promise<void>;
    destroy(id: string): Promise<void>;
}
