/**
 * Represents the site being created.
 */
export type Site = {
    /**
     * The site's external reference code.
     */
    externalReferenceCode?: string;
    readonly friendlyUrlPath?: string;
    readonly id?: number;
    readonly key?: string;
    membershipType?: 'open' | 'private' | 'restricted';
    name: string;
    parentSiteKey?: string;
    templateKey?: string;
    templateType?: 'site-initializer' | 'site-template';
    readonly 'x-class-name'?: string;
};
export type PostSiteRequestBody = {
    /**
     * File
     */
    file?: Blob | File;
    site?: Site;
};
export type MultipartBody = {
    values?: {
        [key: string]: string;
    };
};
export type PutSiteByExternalReferenceCodeRequestBody = {
    /**
     * File
     */
    file?: Blob | File;
};
export type DeleteSiteData = {
    body?: never;
    path: {
        siteId: string;
    };
    query?: never;
    url: '/o/headless-site/v1.0/sites/{siteId}';
};
export type DeleteSiteResponses = {
    /**
     * default response
     */
    default: unknown;
};
export type DeleteSiteByExternalReferenceCodeData = {
    body?: never;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-site/v1.0/sites/by-external-reference-code/{externalReferenceCode}';
};
export type DeleteSiteByExternalReferenceCodeResponses = {
    /**
     * default response
     */
    default: unknown;
};
export type GetSiteByExternalReferenceCodeData = {
    body?: never;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-site/v1.0/sites/by-external-reference-code/{externalReferenceCode}';
};
export type GetSiteByExternalReferenceCodeResponses = {
    /**
     * default response
     */
    default: Site;
};
export type GetSiteByExternalReferenceCodeResponse = GetSiteByExternalReferenceCodeResponses[keyof GetSiteByExternalReferenceCodeResponses];
export type PutSiteByExternalReferenceCodeData = {
    body?: PutSiteByExternalReferenceCodeRequestBody;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-site/v1.0/sites/by-external-reference-code/{externalReferenceCode}';
};
export type PutSiteByExternalReferenceCodeResponses = {
    /**
     * default response
     */
    default: Site;
};
export type PutSiteByExternalReferenceCodeResponse = PutSiteByExternalReferenceCodeResponses[keyof PutSiteByExternalReferenceCodeResponses];
export type GetSiteByExternalReferenceCodeSiteInitializerData = {
    body?: never;
    path: {
        externalReferenceCode: string;
    };
    query?: never;
    url: '/o/headless-site/v1.0/sites/by-external-reference-code/{externalReferenceCode}/site-initializer';
};
export type GetSiteByExternalReferenceCodeSiteInitializerResponses = {
    /**
     * default response
     */
    default: Blob | File;
};
export type GetSiteByExternalReferenceCodeSiteInitializerResponse = GetSiteByExternalReferenceCodeSiteInitializerResponses[keyof GetSiteByExternalReferenceCodeSiteInitializerResponses];
export type PostSite1Data = {
    body?: Site;
    path?: never;
    query?: never;
    url: '/o/headless-site/v1.0/sites';
};
export type PostSite1Responses = {
    /**
     * default response
     */
    default: Site;
};
export type PostSite1Response = PostSite1Responses[keyof PostSite1Responses];
export type ClientOptions = {
    baseUrl: 'http://localhost:8080' | (string & {});
};
