import { AuthCheckContextLoaderKeys } from '../../domain/loaders.js';
import { MaybeUserContext, DashboardContext } from '../../domain/context.js';
import { DashboardNotFoundError, DashboardsNotEnabledError, WorkspaceNoEditorSeatError, WorkspaceNotEnoughPermissionsError, WorkspacePlanNoFeatureAccessError } from '../../domain/authErrors.js';
import { AuthPolicy } from '../../domain/policies.js';
type PolicyLoaderKeys = typeof AuthCheckContextLoaderKeys.getEnv | typeof AuthCheckContextLoaderKeys.getServerRole | typeof AuthCheckContextLoaderKeys.getAdminOverrideEnabled | typeof AuthCheckContextLoaderKeys.getDashboard | typeof AuthCheckContextLoaderKeys.getWorkspacePlan | typeof AuthCheckContextLoaderKeys.getWorkspaceRole | typeof AuthCheckContextLoaderKeys.getWorkspaceSeat;
type PolicyArgs = MaybeUserContext & DashboardContext;
type PolicyErrors = InstanceType<typeof DashboardsNotEnabledError | typeof DashboardNotFoundError | typeof WorkspaceNotEnoughPermissionsError | typeof WorkspacePlanNoFeatureAccessError | typeof WorkspaceNoEditorSeatError>;
export declare const canEditDashboardPolicy: AuthPolicy<PolicyLoaderKeys, PolicyArgs, PolicyErrors>;
export {};
//# sourceMappingURL=canEdit.d.ts.map