import { BaseService, ValidatedResponse } from '@txstate-mws/graphql-server'; import { type Template, DosGatoService, TemplateRule, type TemplateRuleFilter, type CreateTemplateRuleInput, TemplateRuleResponse, type UpdateTemplateRuleInput } from '../internal.js'; export declare class TemplateRuleServiceInternal extends BaseService { findById(ruleId: string): Promise; findByRoleId(roleId: string, filter?: TemplateRuleFilter): Promise; } export declare class TemplateRuleService extends DosGatoService { raw: TemplateRuleServiceInternal; findById(ruleId: string): Promise; findByRoleId(roleId: string, filter?: TemplateRuleFilter): Promise; create(args: CreateTemplateRuleInput, validateOnly?: boolean): Promise; update(args: UpdateTemplateRuleInput, validateOnly?: boolean): Promise; delete(ruleId: string): Promise; static applies(rule: TemplateRule, template: Template): boolean; asOrMorePowerful(ruleA: TemplateRule, ruleB: TemplateRule): boolean; tooPowerful(rule: TemplateRule): boolean; mayWrite(rule: TemplateRule): Promise; mayView(rule: TemplateRule): boolean; }