import { z } from 'zod'; import { Accessor } from './base.ts'; import { type MsGraphConfig, type MsGraphConfigResolved } from '../core/msgraph/config.ts'; import { DriveLoc } from '../core/msgraph/drive.ts'; import { type ConfigOf, type RedactedConfig } from '../resource/secrets.ts'; export interface SharePointConfig extends MsGraphConfig { siteFilter?: string; site?: string; drive?: string; keyPrefix?: string; } declare const SharePointConfigSchema: z.ZodObject<{ siteFilter: z.ZodOptional; site: z.ZodOptional; drive: z.ZodOptional; keyPrefix: z.ZodOptional; accessToken: z.ZodUnion]>; tenantHost: z.ZodOptional; graphBaseUrl: z.ZodOptional; timeout: z.ZodOptional; maxRetries: z.ZodOptional; }, z.core.$strip>; export type SharePointConfigRedacted = RedactedConfig, 'accessToken'>; export declare function redactSharePointConfig(config: SharePointConfig): SharePointConfigRedacted; export declare function normalizeSharePointConfig(input: Record): SharePointConfig; export interface SharePointConfigResolved extends MsGraphConfigResolved { siteFilter: string | null; site: string | null; drive: string | null; keyPrefix: string; } export interface ResolvedSharePointPath { level: 'root' | 'site' | 'drive' | 'item'; siteId: string | null; driveId: string | null; itemPath: string | null; } export declare class SharePointAccessor extends Accessor { readonly config: SharePointConfigResolved; private readonly siteCache; private readonly driveCache; constructor(config: SharePointConfig); private siteItems; private driveItems; siteEntries(): Promise<[string, string][]>; listSites(): Promise; driveEntries(siteId: string): Promise<[string, string][]>; listDrives(siteId: string): Promise; private siteId; private driveId; resolve(path: string): Promise; loc(resolved: ResolvedSharePointPath, virtual: string): DriveLoc; } export {}; //# sourceMappingURL=sharepoint.d.ts.map