import { BaseService, ValidatedResponse } from '@txstate-mws/graphql-server'; import { type Asset, AssetRule, AssetRuleResponse, type AssetRuleFilter, type AssetFolder, type CreateAssetRuleInput, DosGatoService, type UpdateAssetRuleInput } from '../internal.js'; export declare class AssetRuleServiceInternal extends BaseService { findById(ruleId: string): Promise; findByRoleId(roleId: string, filter?: AssetRuleFilter): Promise; findBySiteId(siteId?: string): Promise; findByAsset(asset: Asset): Promise; findByAssetFolder(folder: AssetFolder): Promise; } export declare class AssetRuleService extends DosGatoService { raw: AssetRuleServiceInternal; findById(ruleId: string): Promise; findByRoleId(roleId: string, filter?: AssetRuleFilter): Promise; findBySiteId(siteId?: string): Promise; findByAsset(asset: Asset): Promise; findByAssetFolder(folder: AssetFolder): Promise; create(args: CreateAssetRuleInput, validateOnly?: boolean): Promise; update(args: UpdateAssetRuleInput, validateOnly?: boolean): Promise; delete(ruleId: string): Promise; static applies(rule: AssetRule, assetOrFolder: Asset | AssetFolder, pathWithoutSite: string): boolean; static appliesToPagetree(r: AssetRule, assetOrFolder: Asset | AssetFolder): boolean; static appliesToPath(rule: AssetRule, pathWithoutSite: string): boolean; static appliesToChildOfPath(rule: AssetRule, folderPathWithoutSite: string): boolean; static appliesToParentOfPath(rule: AssetRule, folderPathWithoutSite: string): boolean; asOrMorePowerful(ruleA: AssetRule, ruleB: AssetRule): boolean; tooPowerful(rule: AssetRule): boolean; mayView(rule: AssetRule): boolean; mayWrite(rule: AssetRule): Promise; }