import { type AnyType } from './any';
import { type DbtLog } from './job';
type LightdashErrorData = {
    /**
     * Optional URL linking to relevant documentation.
     * Can be used to provide users with additional context/guidance about the error.
     */
    documentationUrl?: string;
    [key: string]: AnyType;
};
type LightdashErrorParams = {
    message: string;
    name: string;
    statusCode: number;
    data: LightdashErrorData;
};
export declare class LightdashError extends Error {
    statusCode: number;
    data: LightdashErrorData;
    constructor({ message, name, statusCode, data }: LightdashErrorParams);
}
export declare class ForbiddenError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class GoogleNotConnectedError extends LightdashError {
    constructor(message?: string);
}
export declare class DeactivatedAccountError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class TrialExpiredError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class AuthorizationError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class ExpiredError extends LightdashError {
    constructor(message: string);
}
export declare class ParameterError extends LightdashError {
    constructor(message?: string, data?: Record<string, AnyType>);
}
export declare class PayloadTooLargeError extends LightdashError {
    constructor(message?: string, data?: Record<string, AnyType>);
}
export declare class NonCompiledModelError extends LightdashError {
    constructor(message: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class MissingCatalogEntryError extends LightdashError {
    constructor(message: string, data: {
        [key: string]: AnyType;
    });
}
export declare class MissingWarehouseCredentialsError extends LightdashError {
    constructor(message: string);
}
export declare class UnexpectedServerError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class UnexpectedIndexError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class UnexpectedGitError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
/**
 * Thrown when a Git write operation (create branch, commit, open/update PR) is
 * rejected because the credentials backing the connection lack write access —
 * e.g. GitHub returns 403 "Resource not accessible by integration". This is a
 * terminal setup problem (a personal access token without write scope, or a
 * GitHub App installation missing Contents/Pull-requests write), not a transient
 * failure, so callers should surface a one-time fix rather than retry.
 */
export declare class InsufficientGitPermissionsError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class UnexpectedDatabaseError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class ParseError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class CompileError extends LightdashError {
    constructor(message?: string, data?: Record<string, AnyType>);
}
export declare class FieldReferenceError extends LightdashError {
    constructor(message?: string, data?: Record<string, AnyType>);
}
export declare class DbtError extends LightdashError {
    logs: DbtLog[] | undefined;
    constructor(message?: string, logs?: DbtLog[]);
}
export declare class NotFoundError extends LightdashError {
    constructor(message: string);
}
export declare class NotSupportedError extends LightdashError {
    constructor(message: string);
}
export declare class InvalidUser extends LightdashError {
    constructor(message: string);
}
export declare class WarehouseConnectionError extends LightdashError {
    constructor(message: string);
}
export declare class WarehouseQueryError extends LightdashError {
    constructor(message: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class SmptError extends LightdashError {
    constructor(message: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class AlreadyProcessingError extends LightdashError {
    constructor(message: string);
}
export declare class AlreadyExistsError extends LightdashError {
    constructor(message: string);
}
export declare class ConflictError extends LightdashError {
    constructor(message: string);
}
export declare class MissingConfigError extends LightdashError {
    constructor(message: string);
}
export declare class NotEnoughResults extends LightdashError {
    constructor(message: string);
}
export declare class PaginationError extends LightdashError {
    constructor(message: string);
}
export declare class SlackInstallationNotFoundError extends LightdashError {
    constructor(message?: string);
}
export declare class SlackError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class SlackFileUploadError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class MsTeamsError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class GoogleChatError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class UnexpectedGoogleSheetsError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class GoogleSheetsScopeError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class GoogleSheetsTransientError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class TooManyRequestsError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class GoogleSheetsQuotaError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class NotImplementedError extends LightdashError {
    constructor(message?: string);
}
export declare class DeprecatedRouteError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare const getErrorMessage: (e: unknown) => string;
export declare class ScreenshotError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class SshTunnelError extends LightdashError {
    constructor(message: string);
}
export declare class ReadFileError extends LightdashError {
    constructor(message: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class S3Error extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class ResultsExpiredError extends LightdashError {
    constructor(message?: string);
}
export declare class ExpiredQueryError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class TimeoutError extends LightdashError {
    constructor(message: string);
}
export declare class AiDuplicateSlackPromptError extends LightdashError {
    constructor(message: string);
}
export declare class AiSlackMappingNotFoundError extends LightdashError {
    constructor(message: string);
}
export declare class AiAgentNotFoundError extends LightdashError {
    constructor(message: string);
}
export declare class AiAgentValidatorError extends LightdashError {
    constructor(message: string);
}
export declare class SnowflakeTokenError extends LightdashError {
    constructor(message: string);
}
export declare class DatabricksTokenError extends LightdashError {
    constructor(message: string);
}
export declare class BigqueryTokenError extends LightdashError {
    constructor(message: string);
}
export declare class RedshiftIamTokenError extends LightdashError {
    constructor(message: string);
}
export declare class CustomSqlQueryForbiddenError extends LightdashError {
    constructor(message?: string);
}
export declare class OauthAuthenticationError extends LightdashError {
    constructor(message?: string, data?: {
        [key: string]: AnyType;
    });
}
export declare class GenerateDailySchedulerJobError extends LightdashError {
    schedulerUuid: string;
    constructor(message: string, schedulerUuid: string, originalError?: unknown);
}
export declare class LightdashProjectConfigError extends LightdashError {
    constructor(message?: string, data?: Record<string, AnyType>);
}
export declare class CorruptedExploreError extends LightdashError {
    constructor(message?: string, data?: Record<string, AnyType>);
}
export declare class InvalidSpaceStateError extends LightdashError {
    constructor(message: string);
}
export declare class JobPollTimeoutError extends LightdashError {
    jobId: string;
    timeoutMs: number;
    constructor(jobId: string, timeoutMs: number);
}
export {};
//# sourceMappingURL=errors.d.ts.map