import { BaseToolController } from '../base/BaseToolController.js';
import { UcmApiClient } from '../../clients/UcmLocalApiClient.js';
import { ILogger } from '../../interfaces/ILogger.js';
export declare class PublishArtifactController extends BaseToolController {
    constructor(ucmClient: UcmApiClient, logger: ILogger);
    get name(): string;
    get description(): string;
    get inputSchema(): any;
    protected handleExecute(params: any): Promise<any>;
    private validatePublishRequest;
    private performPrePublishValidation;
    private handleExistingArtifact;
    private preparePublishData;
    private performPostPublishProcessing;
    private validateContent;
    private performSecurityScan;
    private validateDependencies;
    private performQualityChecks;
    private parseArtifactPath;
    private extractAuthorFromPath;
    private extractCategoryFromPath;
    private extractTechnologyFromMetadata;
    private calculateContentHash;
    private detectContentType;
    private detectLanguageFromContent;
    private isCodeContent;
    private validateSyntax;
    private generateDocumentation;
    private buildViewUrl;
    private buildDownloadUrl;
    private buildApiUrl;
    private indexForSearch;
    private updateCaches;
    private sendMaintainerNotifications;
    private recordPublishAnalytics;
}
//# sourceMappingURL=PublishArtifactController.d.ts.map