import { AjaxService } from "./AjaxService";
import { LocalizationService } from "./LocalizationService";
import { Sites } from "../../../models";
import { UserService } from "./UserService";
export declare class SitesService {
    private ajaxService;
    private localizationService;
    private userService;
    constructor(ajaxService: AjaxService, localizationService: LocalizationService, userService: UserService);
    getSiteDynamicPropertyValues: (sourceUrl: string, callback: (properties: Sites.ISiteTemplateCustomField[]) => void) => void;
    validateSiteTemplateInfo: (callback: (siteTemplateInfo: Sites.IValidateSiteTemplateInfo) => void) => void;
    addSiteRequest: (siteRequest: Sites.ISiteRequest, callback: (result: Sites.ISiteRequestResult) => void) => void;
    setupSiteRequest: (siteRequest: Sites.ISiteRequest, callback: (result: Sites.ISiteRequestResult) => void) => void;
    checkRequestStatus: (siteRequestId: string, callback: (siteRequestStatus: number) => void, reject?: (error: any) => void) => void;
    initSiteRequest: (siteTemplate: Sites.ISiteTemplate) => Sites.ISiteRequest;
    getSiteProvisioningResult: (spUrl: string, callback: (siteProvisioningResult: Sites.ISiteProvisioningResult) => void) => void;
    getAllSiteTemplates: (callback: (siteTemplates: Sites.ISiteTemplate[]) => void) => void;
    getSiteTemplates: (targetSiteUrl: string, templateGroup: string, callback: (siteTemplates: Sites.ISiteTemplate[]) => void) => void;
    getSiteTemplateWithValidation: (targetSiteUrl: string, siteTemplateId: string, callback: (siteCreationValidationResult: Sites.ISiteCreationValidation) => void) => void;
    canAliasBeUsed: (alias: string, callback: (data: any) => void) => void;
    createOfficeGroup: (siteRequest: Sites.ISiteRequest, callback: (result: any) => void, reject: (error: any) => void) => void;
    createOffice365Group: (siteRequest: Sites.ISiteRequest, conversation: number, callback: (result: any) => void, reject: (error: any) => void) => void;
    addOfficeGroupMember: (siteRequest: Sites.ISiteRequest, groupId: string, callback: () => void, reject: (error: any) => void) => void;
    private ensureOfficeGroupMembers;
}
