import { Dashboard } from '../Dashboard';
export declare type ProjectType = 'instant_dashboard' | 'self_hosted' | 'managed_query_engine' | 'in_browser' | 'dynamic_self_hosted_query_engine';
export declare type GlobalLibrary = {
    id: string;
    name: string;
    created_at: string;
    updated_at: string;
};
export declare type Project = {
    instant_dashboard_id: string | null;
    managed_query_engine_id: string | null;
    id: string;
    name: string;
    type: ProjectType;
    created_at: Date;
    share_links?: ShareLink[];
    parent_dashboards: Dashboard[];
    parent_global_libraries: GlobalLibrary[];
    key_pairs: RawKeyPair[];
    encrypted_encryption_secret: string | null;
    query_engine_users: Array<{
        id: string;
        /** Hashed and encrypted using the encryption secret on the query engine */
        password: string | null;
        user: {
            id: string;
            email: string;
            first_name: string;
            last_name: string;
        };
    }>;
    config_store: {
        id: string;
        versions: Array<{
            id: string;
            created_at: string;
            updated_at: string;
        }>;
    };
    connections: Array<{
        id: string;
        created_at: string;
        updated_at: string;
        disabled: boolean;
    }>;
    api_keys: Array<{
        id: string;
        created_at: string;
        disabled: boolean;
    }>;
    deleted: boolean;
    data_upload: {
        created_at: string;
        id: string;
        updated_at: string;
    };
};
export declare type ShareLink = {
    id: string;
    token: string;
    active: boolean;
    created_at: string;
    title: string;
    email: string | null;
};
export declare type RawKeyPair = {
    id: string;
    uploaded_by: string;
    public_key: string;
    organisation_id: string;
    uploaded_at: string;
    updated_at: string;
    disabled: boolean;
};
