import * as Types from "../../store/zdesk.type";
export interface PostCustomerCustomFieldConfigs {
    business_id: string;
    key: string;
    name: string;
    description?: string | null;
    default_value?: string | null;
    type: Types.CUSTOM_FIELD_CONFIG_TYPE;
    options?: string | Types.OptionValue[] | null;
    is_pinned?: boolean;
    is_required?: boolean;
    order_index?: number;
    is_show?: boolean;
}
export declare function postCustomerCustomFieldConfigs(service: Types.ZdeskService, payload: PostCustomerCustomFieldConfigs): Promise<any>;
interface GetCustomerCustomFieldConfigsRequest extends Types.ApiPaginationRequest {
    business_id: string;
    search?: string;
    key?: string;
}
interface GetCustomerCustomFieldConfigsResponse extends Types.ApiPaginationResponse<Types.ICustomFieldConfig> {
}
export declare function getCustomerCustomFieldConfigs(service: Types.ZdeskService, payload: GetCustomerCustomFieldConfigsRequest): Promise<GetCustomerCustomFieldConfigsResponse>;
export interface PatchCustomerCustomFieldConfigs {
    business_id: string;
    custom_field_configs: Types.ICustomFieldConfig[];
}
export declare function patchCustomerCustomFieldConfigs(service: Types.ZdeskService, payload: PatchCustomerCustomFieldConfigs): Promise<any>;
export interface PutCustomerCustomFieldConfigsOrder {
    business_id: string;
    custom_field_configs: {
        id: string;
        is_show: boolean;
        order_index: number;
    }[];
}
export declare function putCustomerCustomFieldConfigsOrder(service: Types.ZdeskService, payload: PutCustomerCustomFieldConfigsOrder): Promise<any>;
export interface DeleteCustomerCustomFieldConfigs {
    id: string;
}
export declare function deleteCustomerCustomFieldConfigs(service: Types.ZdeskService, payload: DeleteCustomerCustomFieldConfigs): Promise<any>;
interface GetCustomerCustomFieldConfigsCustomerRequest {
    customer_id: string;
    business_id: string;
}
export declare function getCustomerCustomFieldConfigsCustomer(service: Types.ZdeskService, payload: GetCustomerCustomFieldConfigsCustomerRequest): Promise<Types.ICustomerCustomFieldByCustomer[]>;
export interface PostCustomerCustomFieldRequest {
    business_id: string;
    customer_id: string;
    value: {
        value: string;
    };
    custom_field_config_id?: string;
    key?: string;
}
export declare function postCustomerCustomField(service: Types.ZdeskService, payload: PostCustomerCustomFieldRequest): Promise<Types.ICustomerCustomFieldItemByCustomer>;
interface GetCustomerCustomFieldRequest extends Types.ApiPaginationRequest {
    customer_id: string;
}
interface GetCustomerCustomFieldResponse extends Types.ApiPaginationResponse<Types.ICustomerCustomFieldValue> {
}
export declare function getCustomerCustomField(service: Types.ZdeskService, payload: GetCustomerCustomFieldRequest): Promise<GetCustomerCustomFieldResponse>;
export interface PatchCustomerCustomFieldRequest {
    id: string;
    value: {
        value: string;
    };
    business_id: string;
    customer_id: string;
}
export declare function patchCustomerCustomField(service: Types.ZdeskService, payload: PatchCustomerCustomFieldRequest): Promise<any>;
interface GetCustomerCommentRequest extends Types.ApiPaginationRequest {
    business_id: string;
    customer_id: string;
}
interface GetCustomerCommentResponse extends Types.ApiPaginationResponse<Types.ICustomerComment> {
}
export declare function getCustomerComment(service: Types.ZdeskService, payload: GetCustomerCommentRequest): Promise<GetCustomerCommentResponse>;
interface PostCustomerCommentRequest {
    business_id: string;
    customer_id: string;
    business_user_id: string;
    messages: Types.ICustomerCommentMessage;
}
export declare function postCustomerComment(service: Types.ZdeskService, payload: PostCustomerCommentRequest): Promise<any>;
interface PatchCustomerCommentRequest {
    business_id: string;
    customer_id: string;
    id: string;
    messages: Types.ICustomerCommentMessage;
}
export declare function patchCustomerComment(service: Types.ZdeskService, payload: PatchCustomerCommentRequest): Promise<any>;
interface DeleteCustomerCommentRequest {
    business_id: string;
    customer_id: string;
    id: string;
}
export declare function deleteCustomerComment(service: Types.ZdeskService, payload: DeleteCustomerCommentRequest): Promise<any>;
interface PostCustomerCommentReplyRequest {
    business_id: string;
    business_user_id: string;
    customer_comment_id: string;
    messages: Types.ICustomerCommentMessage;
}
export declare function postCustomerCommentReply(service: Types.ZdeskService, payload: PostCustomerCommentReplyRequest): Promise<any>;
interface PatchCustomerCommentReplyRequest {
    business_id: string;
    customer_comment_id: string;
    id: string;
    messages: Types.ICustomerCommentMessage;
}
export declare function patchCustomerCommentReply(service: Types.ZdeskService, payload: PatchCustomerCommentReplyRequest): Promise<any>;
interface DeleteCustomerCommentReplyRequest {
    business_id: string;
    customer_comment_id: string;
    id: string;
}
export declare function deleteCustomerCommentReply(service: Types.ZdeskService, payload: DeleteCustomerCommentReplyRequest): Promise<any>;
interface GetCustomerCommentLogRequest extends Types.ApiPaginationRequest {
    business_id: string;
    customer_comment_id?: string;
    customer_id?: string;
}
interface GetCustomerCommentLogResponse extends Types.ApiPaginationResponse<Types.ICustomerCommentLog> {
}
export declare function getCustomerCommentLog(service: Types.ZdeskService, payload: GetCustomerCommentLogRequest): Promise<GetCustomerCommentLogResponse>;
interface PostCustomerTagConfigsRequest {
    data: {
        business_id: string;
        tag: string;
    };
}
export declare function postCustomerTagConfigs(service: Types.ZdeskService, payload: PostCustomerTagConfigsRequest): Promise<any>;
interface GetCustomerTagConfigsRequest extends Types.ApiPaginationRequest {
    business_id?: string;
    tags?: string;
}
interface GetCustomerTagConfigsResponse extends Types.ApiPaginationResponse<Types.ICustomerTagConfig> {
}
export declare function getCustomerTagConfigs(service: Types.ZdeskService, payload: GetCustomerTagConfigsRequest): Promise<GetCustomerTagConfigsResponse>;
interface DeleteCustomerTagConfigsRequest {
    data: {
        business_id: string;
        ids: string[];
    };
}
export declare function deleteCustomerTagConfigs(service: Types.ZdeskService, payload: DeleteCustomerTagConfigsRequest): Promise<any>;
export {};
