import { QueryAttributes } from '../QueryAttributes/types';
declare type AllowedTablesRule = {
    table: string;
};
export declare type VizzlyApiAccessConfig = {
    allowVizzlyConfigReadAccess?: string;
};
export declare type QueryEngineAccessConfig = {
    projectId: string;
    allowDatabaseSchemaAccess: boolean | Array<AllowedTablesRule>;
    allowDatabaseWriteAccess?: Array<AllowedTablesRule>;
    allowDataPreviewAccess: boolean;
    expires: string;
    signature: string;
};
export declare type DataAccessConfig = {
    dataSetIds: string[] | '*';
    secureFilters: {
        [dataSetId: string]: QueryAttributes.Filter[];
    };
    parameters?: Object;
    expires: string;
    signature: string;
};
export declare type DashboardAccessConfig = {
    projectId: string;
    /** @deprecated */
    dashboardId?: string;
    userReference: string;
    expires: string;
    signature: string;
    accessType: 'admin' | 'standard';
    scope: 'read' | 'read_write';
};
export declare type DashboardAdminOverrideConfig = {
    signature: string;
    project_id: string;
};
export declare type IdentityConfig = {
    dashboardAccess: DashboardAccessConfig;
    dashboardAdminOverride?: DashboardAdminOverrideConfig;
    dataAccess?: DataAccessConfig;
    queryEngineAccessConfig?: QueryEngineAccessConfig;
};
export {};
