type JSONObject = {
    [key: string]: unknown;
} | undefined;
export declare function flattenObject(obj: JSONObject): {
    [key: string]: unknown;
} | undefined;
export declare enum SearchFilterOperator {
    EQ = "EQ",
    NEQ = "NEQ",
    LT = "LT",
    LTE = "LTE",
    GT = "GT",
    GTE = "GTE",
    BETWEEN = "BETWEEN",
    IN = "IN",
    NOT_IN = "NOT_IN",
    HAS_PROPERTY = "HAS_PROPERTY",
    NOT_HAS_PROPERTY = "NOT_HAS_PROPERTY",
    CONTAINS_TOKEN = "CONTAINS_TOKEN",
    NOT_CONTAINS_TOKEN = "NOT_CONTAINS_TOKEN"
}
export interface SearchFilter {
    propertyName: string;
    operator: SearchFilterOperator;
    value: unknown;
}
export interface SearchFilterGroup {
    filters: SearchFilter[];
}
export interface SearchPayload {
    filterGroups: SearchFilterGroup[];
    properties?: string[];
    sorts?: string[];
    limit?: number;
    after?: number;
}
export interface ResponseInfo {
    id: string;
    properties: Record<string, string>;
}
export interface SearchResponse {
    total: number;
    results: ResponseInfo[];
}
export interface UpsertRecordResponse extends ResponseInfo {
}
export declare function transformEventName(eventName: string): string;
export declare enum AssociationCategory {
    HUBSPOT_DEFINED = "HUBSPOT_DEFINED",
    USER_DEFINED = "USER_DEFINED",
    INTEGRATOR_DEFINED = "INTEGRATOR_DEFINED"
}
export interface AssociationType {
    associationCategory: AssociationCategory;
    associationTypeId: number;
}
export interface CreateAssociation {
    to: {
        id: string;
    };
    types: AssociationType[];
}
export interface AssociationLabel {
    category: AssociationCategory;
    typeId: number;
    label: string;
}
export interface GetAssociationLabelResponse {
    results: AssociationLabel[];
}
export interface GetCustomEventsResult {
    name: string;
    fullyQualifiedName: string;
}
export interface GetCustomEventResponse {
    data: {
        total: number;
        results: GetCustomEventsResult[];
    };
}
export {};
