import * as plugins from '../../plugins.js'; import type { IApiTokenPolicy, TGatewayClientType } from '../../../dist_ts_interfaces/data/route-management.js'; export interface IGatewayClientPendingProvisioning { type: TGatewayClientType; name: string; description: string | null; hostnamePatterns: string[]; allowedRouteTargets: NonNullable; capabilities: NonNullable; enabled: boolean; policyGeneration: number; policyDigest: string; credentialSequence: number; stagedAt: number; stagedBy: string; } export declare class GatewayClientDoc extends plugins.smartdata.SmartDataDbDoc { id: string; type: TGatewayClientType; name: string; description?: string; hostnamePatterns: string[]; allowedRouteTargets: NonNullable; capabilities: NonNullable; enabled: boolean; policyGeneration: number; credentialSequence: number; /** Exact provisioned credential sequence authorized for the active policy. */ activeCredentialSequence: number; /** Monotonic compare-and-set authority for every mutable client field. */ mutationRevision: number; pendingProvisioning: IGatewayClientPendingProvisioning | null; createdAt: number; updatedAt: number; createdBy: string; constructor(); static findById(id: string): Promise; private static getNativeCollection; private static buildRevisionSelector; static compareAndSet(idArg: string, expectedRevisionArg: number, setArg: Record, unsetArg?: string[]): Promise; static deleteIfRevision(idArg: string, expectedRevisionArg: number): Promise; static findAll(): Promise; }