import { ValidatedResponse, type ValidatedResponseArgs } from '@txstate-mws/graphql-server'; import { PagetreeType, RulePathMode } from '../internal.js'; interface AssetRuleRow { id?: number | string; roleId?: number | string; siteId?: number | string; pagetreeType?: PagetreeType; path: string; mode: RulePathMode; create?: number | boolean; update?: number | boolean; move?: number | boolean; delete?: number | boolean; undelete?: number | boolean; } export declare class AssetRuleGrantsBase { create: boolean; update: boolean; move: boolean; delete: boolean; undelete: boolean; constructor(row?: AssetRuleRow); } export declare class AssetRuleGrants extends AssetRuleGrantsBase { view: boolean; viewForEdit: boolean; constructor(row?: AssetRuleRow); } export declare class AssetRule { id: string; type: string; path: string; mode: RulePathMode; grants: AssetRuleGrants; roleId: string; siteId?: string; pagetreeType?: PagetreeType; constructor(row: AssetRuleRow); } export declare class AssetRuleFilter { ids?: string[]; siteIds?: (string | null)[]; pagetreeTypes?: (PagetreeType | null)[]; roleIds?: string[]; paths?: string[]; create?: boolean; update?: boolean; move?: boolean; delete?: boolean; undelete?: boolean; } export declare class CreateAssetRuleInput { roleId: string; siteId?: string; pagetreeType?: PagetreeType; path?: string; mode?: RulePathMode; grants?: AssetRuleGrantsBase; } export declare class UpdateAssetRuleInput { ruleId: string; siteId?: string; pagetreeType?: PagetreeType; path?: string; mode?: RulePathMode; grants?: AssetRuleGrantsBase; } export declare class AssetRuleResponse extends ValidatedResponse { assetRule?: AssetRule; constructor(config: ValidatedResponseArgs & { assetRule?: AssetRule; }); } export declare class AssetRulePermissions { } export {};