/** Types for the unbundled Astrabase Control Plane SDK; no npm package published yet. */
export interface AstrabaseClientOptions { baseUrl?: string; token?: string; fetchImpl?: typeof fetch; timeoutMs?: number; }
export interface AstrabaseRequestOptions { method?: 'GET'|'POST'|'PUT'|'PATCH'|'DELETE'; body?: unknown; raw?: boolean; response?: 'json'|'text'|'csv'|'bytes'; signal?: AbortSignal; }
export class AstrabaseApiError extends Error { readonly status: number; readonly code: string|null; constructor(message:string,status:number,options?:{code?:string|null}); }
export class AstrabaseClient {
 readonly baseUrl: string; readonly token: string; readonly timeoutMs: number;
 constructor(options?:AstrabaseClientOptions);
 request<T=unknown>(route:string,options?:AstrabaseRequestOptions):Promise<T>;
 health():Promise<unknown>;
 openApi():Promise<unknown>;
 services():Promise<unknown>;
 profile():Promise<unknown>;
 mfaStatus():Promise<unknown>;
 mfaEnroll(password:string):Promise<unknown>;
 mfaConfirm(code:string):Promise<unknown>;
 revokeBrowserSessions(password:string):Promise<unknown>;
 tokens():Promise<unknown>;
 createToken(name:string,expiresInDays?:number):Promise<unknown>;
 revokeToken(tokenId:string):Promise<unknown>;
 teams():Promise<unknown>;
 createTeam(name:string):Promise<unknown>;
 inviteTeamMember(teamId:string,email:string,role?:string):Promise<unknown>;
 billing():Promise<unknown>;
 projects():Promise<unknown>;
 createProject(payload:Record<string,unknown>):Promise<unknown>;
 project(id:string):Promise<unknown>;
 sqlStudio(id:string):Promise<unknown>;
 importSavedSqlLibrary(id:string,portable:{format:'astrabase-sql-studio-v1';queries:Array<{name:string;folder:string;sql:string;favorite:boolean}>}):Promise<unknown>;
 createSavedSql(id:string,payload:Record<string,unknown>):Promise<unknown>;
 updateSavedSql(id:string,queryId:string,payload:Record<string,unknown>):Promise<unknown>;
 deleteSavedSql(id:string,queryId:string):Promise<unknown>;
 savedSqlRevisions(id:string,queryId:string):Promise<unknown>;
 restoreSavedSqlRevision(id:string,queryId:string,revisionVersion:number,expectedVersion:number):Promise<unknown>;
 executeSqlStudio(id:string,query:string,options?:{confirmDestructive?:boolean;savedQueryId?:string|null}):Promise<unknown>;
 updateProject(id:string,payload:Record<string,unknown>):Promise<unknown>;
 deleteProject(id:string):Promise<unknown>;
 insights(id:string):Promise<unknown>;
 analytics(id:string):Promise<unknown>;
 analyticsDailyCsv(id:string):Promise<string>;
 analyticsReport(id:string):Promise<unknown>;
 audit(id:string):Promise<unknown>;
 auditCsv(id:string):Promise<unknown>;
 supportDiagnostics(id:string):Promise<unknown>;
 securityCenterReport(id:string):Promise<unknown>;
 deployments(id:string):Promise<unknown>;
 previews(id:string):Promise<unknown>;
 deployGit(id:string):Promise<unknown>;
 deployZip(id:string,zipBuffer:Uint8Array|ArrayBuffer|Blob):Promise<unknown>;
 rollback(id:string,deploymentId:string):Promise<unknown>;
 domains(id:string):Promise<unknown>;
 addDomain(id:string,hostname:string):Promise<unknown>;
 domainReadiness(id:string,domainId:string):Promise<unknown>;
 issueDomainChallenge(id:string,domainId:string):Promise<unknown>;
 verifyDomain(id:string,domainId:string):Promise<unknown>;
 deleteDomain(id:string,domainId:string):Promise<unknown>;
 env(id:string):Promise<unknown>;
 setEnv(id:string,key:string,value:Record<string,unknown>):Promise<unknown>;
 deleteEnv(id:string,key:string):Promise<unknown>;
 secretRotationReport(id:string):Promise<unknown>;
 secrets(id:string):Promise<unknown>;
 servers(id:string):Promise<unknown>;
 addServer(id:string,metadata:Record<string,unknown>):Promise<unknown>;
 removeServer(id:string,serverId:string):Promise<unknown>;
 dnsRecords(id:string,domainId:string):Promise<unknown>;
 gitActivity(id:string):Promise<unknown>;
 seoReport(id:string):Promise<unknown>;
 seoHistory(id:string):Promise<unknown>;
 seoTrends(id:string):Promise<unknown>;
 gatewayHistory(id:string):Promise<unknown>;
 seoAuditedPage(id:string,slug:string):Promise<unknown>;
 seoAudit(id:string):Promise<unknown>;
 studioDraft(id:string):Promise<unknown>;
 studioQuality(id:string):Promise<unknown>;
 studioVersions(id:string):Promise<unknown>;
 forms(id:string):Promise<unknown>;
 createForm(id:string,name:string):Promise<unknown>;
 formSubmissions(id:string,name:string):Promise<unknown>;
 formSubmissionsCsv(id:string,name:string):Promise<unknown>;
 deleteFormSubmission(id:string,name:string,submissionId:string):Promise<unknown>;
 cacheQueueJobs(id:string):Promise<unknown>;
 cacheQueueEnqueue(id:string,requestId:string,payload:string,maxAttempts?:number):Promise<unknown>;
 cacheQueueClaim(id:string,workerId:string,leaseSeconds?:number):Promise<unknown>;
 cacheQueueAck(id:string,jobId:string,leaseToken:string):Promise<unknown>;
 cacheQueueRetry(id:string,jobId:string,leaseToken:string,delaySeconds?:number):Promise<unknown>;
 cacheQueueRenew(id:string,jobId:string,leaseToken:string,leaseSeconds?:number):Promise<unknown>;
 cacheMaintenancePreview(id:string):Promise<unknown>;
 cacheMaintenanceApply(id:string):Promise<unknown>;
 cacheEntries(id:string):Promise<unknown>;
 cacheMutateBatch(id:string,operations:Array<{key:string;action:'put'|'delete';expected_revision:string|null;value?:string;ttl_seconds?:number}>):Promise<unknown>;
 cacheBatchGet(id:string,keys:string[]):Promise<unknown>;
 cacheReadRevision(id:string,key:string):Promise<unknown>;
 cacheCompareByRevision(id:string,key:string,expectedRevision:string|null,value:string,ttlSeconds?:number):Promise<unknown>;
 cacheCompareAndSet(id:string,key:string,expectedValue:string|null,value:string,ttlSeconds?:number):Promise<unknown>;
 cacheGet(id:string,key:string):Promise<unknown>;
 cacheSet(id:string,key:string,payload:Record<string,unknown>):Promise<unknown>;
 cacheIncrement(id:string,key:string,delta:number,ttlSeconds:number):Promise<unknown>;
 cacheRemove(id:string,key:string):Promise<unknown>;
 cacheClear(id:string):Promise<unknown>;
 flags(id:string):Promise<unknown>;
 setFlag(id:string,key:string,payload:Record<string,unknown>):Promise<unknown>;
 deleteFlag(id:string,key:string):Promise<unknown>;
 configureFlagTargeting(id:string,key:string,targeting:{environments:string[];channels:string[];audience?:{plans:string[];platforms:string[]}},expectedVersion:number):Promise<unknown>;
 flagHistory(id:string,key:string):Promise<unknown>;
 restoreFlag(id:string,key:string,version:number,expectedVersion:number):Promise<unknown>;
 evaluateFlag(id:string,key:string,subjectId:string,context?:{environment?:'production'|'staging'|'development'|'test';channel?:'stable'|'beta'|'internal';plan?:'free'|'pro'|'team'|'enterprise';platform?:'web'|'windows'|'linux'|'macos'|'android'|'ios'}):Promise<unknown>;
 evaluateFlags(id:string,subjectId:string,keys:string[],context?:{environment?:'production'|'staging'|'development'|'test';channel?:'stable'|'beta'|'internal';plan?:'free'|'pro'|'team'|'enterprise';platform?:'web'|'windows'|'linux'|'macos'|'android'|'ios'}):Promise<unknown>;
 errors(id:string):Promise<unknown>;
 acknowledgeErrorInternalAlert(id:string,alertId:string):Promise<unknown>;
 errorInternalAlerts(id:string):Promise<unknown>;
 updateErrorInternalAlertPolicy(id:string,policy:{expected_version:number;enabled:boolean;min_severity:'warning'|'error'|'critical';cooldown_minutes:number;max_alerts_per_day:number}):Promise<unknown>;
 errorTriage(id:string):Promise<unknown>;
 errorActivity(id:string):Promise<unknown>;
 errorDeploymentCorrelation(id:string):Promise<unknown>;
 reportError(id:string,payload:Record<string,unknown>):Promise<unknown>;
 resolveError(id:string,errorId:string):Promise<unknown>;
 mailConfig(id:string):Promise<unknown>;
 mailDeliveries(id:string):Promise<unknown>;
 sendTransactionalMail(id:string,message:Record<string,unknown>):Promise<unknown>;
 cancelTransactionalMail(id:string,deliveryId:string):Promise<unknown>;
 mailTemplates(id:string):Promise<unknown>;
 setMailTemplate(id:string,name:string,payload:Record<string,unknown>):Promise<unknown>;
 deleteMailTemplate(id:string,name:string):Promise<unknown>;
 previewMailTemplate(id:string,name:string,variables?:Record<string,unknown>):Promise<unknown>;
 readiness():Promise<unknown>;
 monitorHistory():Promise<unknown>;
 monitorAlerts():Promise<unknown>;
 monitorAlertInsights():Promise<unknown>;
 updateMonitorAlertPolicy(payload:Record<string,unknown>):Promise<unknown>;
 acknowledgeMonitorAlert(incidentId:string):Promise<unknown>;
 traffic():Promise<unknown>;
}
