import { DocumentServiceConfig, DocumentListOptions, DocumentDisplayItem, DocumentUploadResult, DocumentStatusItem } from '../types/document';
import { AuthConfig } from '../types/auth';
export declare class DocumentServiceSdk {
    private readonly config;
    private readonly authConfig;
    constructor(authConfig: AuthConfig, serviceConfig: DocumentServiceConfig);
    getDocumentList(options: DocumentListOptions): Promise<{
        contents: DocumentDisplayItem[];
        pageNumber: number;
        pageSize: number;
        totalItems: number;
        totalPages: number;
    }>;
    uploadDocument(channelId: string, options: {
        url: string;
        type?: 'common' | 'animate';
        docName?: string;
        callbackUrl?: string;
    }): Promise<DocumentUploadResult>;
    deleteDocument(channelId: string, fileId: string, type: 'old' | 'new'): Promise<boolean>;
    getDocumentStatus(channelId: string, fileId: string): Promise<DocumentStatusItem[]>;
    updateTeacherDocRelation(teacherId: string, fileIds: string, operation: 1 | 2): Promise<boolean>;
    getChannelMultimediaResourceList(channelId: string, options?: {
        pageNumber?: number;
        pageSize?: number;
    }): Promise<any>;
    getChannelMultimediaResourceDetail(channelId: string, options?: {
        pageNumber?: number;
        pageSize?: number;
    }): Promise<any>;
    linkChannelMultimediaResource(channelId: string, vids: string): Promise<boolean>;
    unlinkChannelMultimediaResource(channelId: string, vids: string): Promise<boolean>;
    getUserMultimediaResourceDetail(vids: string): Promise<any>;
    deleteUserMultimediaResource(vids: string): Promise<boolean>;
    private validateListOptions;
    private validateUploadParams;
    private validateDeleteParams;
    private validateStatusParams;
}
//# sourceMappingURL=document.service.sdk.d.ts.map