import { Meta, PublishData } from '@deckdeckgo/editor';
import { _SERVICE as StorageBucketActor } from '../canisters/storage/storage.did';
export interface StorageUpload {
  actor: StorageBucketActor;
  html: string;
  filename: string;
  pathname: string;
  fullUrl: string;
  bucketUrl: string;
  folder: 'p' | 'd';
}
export declare const updateTemplate: ({ template, data }: {
  template: string;
  data: Partial<PublishData>;
}) => string;
export declare const initUpload: ({ indexHTML, folder, meta }: {
  indexHTML: {
    html: string;
    publishData: PublishData;
  };
  folder: 'p' | 'd';
  meta: Meta | undefined;
}) => Promise<{
  storageUpload: StorageUpload;
  publishData: PublishData;
}>;
export declare const initIndexHTML: ({ publishData, updateTemplateContent, sourceFolder }: {
  publishData: PublishData;
  updateTemplateContent: ({ attr, template }: {
    attr: string | undefined;
    template: string;
  }) => string;
  sourceFolder: 'p' | 'd';
}) => Promise<{
  html: string;
}>;
export declare const updateMetaData: <T>({ data, storageUpload, meta, name }: {
  data: T;
  meta: Meta;
  name: string;
  storageUpload: StorageUpload;
}) => T;
export declare const uploadPublishFileIC: ({ filename, html, actor, folder }: {
  filename: string;
  html: string;
  actor: StorageBucketActor;
  folder: 'p' | 'd';
}) => Promise<void>;
