/**
 * Contacts connector — bridges @hasna/contacts with open-testers personas.
 *
 * Allows importing contacts tagged as test users into the personas table,
 * and linking personas back to their source contact via contact_id metadata.
 */
import type { Persona } from "../types/index.js";
interface ContactsContact {
    id: string;
    first_name?: string | null;
    last_name?: string | null;
    name?: string | null;
    email?: string | null;
    role?: string | null;
    company?: string | null;
    tags?: string[];
    notes?: string | null;
}
/**
 * List contacts that have specific tags from the @hasna/contacts DB.
 * Falls back gracefully if contacts DB is not installed.
 */
export declare function listContactsByTag(tags: string[]): ContactsContact[];
/**
 * Import contacts tagged with given tags as personas.
 * Skips contacts that already have a persona (tracked via persona metadata.contactId).
 * Returns { imported, skipped, personas }.
 */
export declare function importPersonasFromContacts(options: {
    tags?: string[];
    projectId?: string;
    dryRun?: boolean;
}): {
    imported: number;
    skipped: number;
    personas: Array<{
        contactId: string;
        name: string;
        personaId?: string;
    }>;
};
/**
 * Sync a persona's details from its linked contact (if any).
 * Updates name, role, and email from the latest contact data.
 */
export declare function syncPersonaFromContact(personaId: string): Persona | null;
export {};
//# sourceMappingURL=contacts-connector.d.ts.map