import { Space, ReadingPermission, PostingPermission } from "../../interfaces/models/Space";
import { UploadImageOptions } from "../../interfaces/models/Image";
interface ImageUploadConfig {
    file: File | Blob;
    options: UploadImageOptions;
}
export interface CreateSpaceProps {
    name: string;
    slug?: string | null;
    description?: string | null;
    avatar?: ImageUploadConfig;
    banner?: ImageUploadConfig;
    readingPermission?: ReadingPermission;
    postingPermission?: PostingPermission;
    requireJoinApproval?: boolean;
    metadata?: Record<string, any>;
    parentSpaceId?: string | null;
}
declare function useCreateSpace(): (props: CreateSpaceProps) => Promise<Space>;
export default useCreateSpace;
