import { AxiosInstance, AxiosRequestConfig, AxiosResponse, CancelToken } from 'axios';
export declare class ApiClientConfiguration {
    apiUrl: string;
    apiKey: string;
    private authorizationToken;
    getAuthorizationToken(): Promise<string>;
    setAuthorizationToken(token: string): void;
}
export declare class ApiClientBase {
    private configuration;
    constructor(configuration: ApiClientConfiguration);
    protected transformOptions(options: AxiosRequestConfig): Promise<AxiosRequestConfig>;
    protected getBaseUrl(defultUrl: string): string;
    protected transformResult(url: string, res: AxiosResponse, cb: (res: AxiosResponse) => Promise<any>): Promise<any>;
}
export interface IBuildInfoApiClient {
    /**
     * Returns an assembly build info.
     * @return Success
     */
    headInfo(): Promise<void>;
    /**
     * Returns an assembly build info.
     * @return Success
     */
    getInfo(): Promise<BuildInfoModel>;
}
export declare class BuildInfoApiClient extends ApiClientBase implements IBuildInfoApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns an assembly build info.
     * @return Success
     */
    headInfo(cancelToken?: CancelToken | undefined): Promise<void>;
    protected processHeadInfo(response: AxiosResponse): Promise<void>;
    /**
     * Returns an assembly build info.
     * @return Success
     */
    getInfo(cancelToken?: CancelToken | undefined): Promise<BuildInfoModel>;
    protected processGetInfo(response: AxiosResponse): Promise<BuildInfoModel>;
}
export interface IProcessingPipelinesApiClient {
    /**
     * Returns all processing pipelines relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param search (optional) Search string for partial by processing pipeline name.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(skip?: number | null | undefined, take?: number | null | undefined, search?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProcessingPipelineDto>;
    /**
     * Returns a processing pipeline.
     * @param id Processing pipeline identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: number, tenantId?: number | null | undefined): Promise<ProcessingPipelineDto>;
}
export declare class ProcessingPipelinesApiClient extends ApiClientBase implements IProcessingPipelinesApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all processing pipelines relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param search (optional) Search string for partial by processing pipeline name.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(skip?: number | null | undefined, take?: number | null | undefined, search?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProcessingPipelineDto>;
    protected processGetAll(response: AxiosResponse): Promise<PagedOfProcessingPipelineDto>;
    /**
     * Returns a processing pipeline.
     * @param id Processing pipeline identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProcessingPipelineDto>;
    protected processGet(response: AxiosResponse): Promise<ProcessingPipelineDto>;
}
export interface IProductBundlesApiClient {
    /**
     * Returns all product bundles, relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductBundles(skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductBundleDto>;
    /**
     * Returns a product bundle by its identifier.
     * @param id Product identifier.
     * @param productBundleVersionId (optional) Product bundle version identifier. Optional
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductBundle(id: number, productBundleVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<ProductBundleDto>;
    /**
     * Returns a product bundle personalization parameters by product identifier.
     * @param id Product bundle identifier.
     * @param productBundleVersionId (optional) Product bundle version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductBundlePersonalizationParameters(id: number, productBundleVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product bundle summary by product bundle identifier.
     * @param id Product bundle identifier.
     * @param productBundleVersionId (optional) Product bundle version identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param sku (optional) Product variant SKU.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSummary(id: number, productBundleVersionId?: number | null | undefined, productVariantId?: number | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined): Promise<ProductSummaryDto>;
    /**
     * Returns a product bundle personalization workflow description by product bundle identifier.
     * @param id Product bundle identifier.
     * @param productBundleVersionId (optional) Product bundle version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(id: number, productBundleVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<PersonalizationWorkflowDto>;
}
export declare class ProductBundlesApiClient extends ApiClientBase implements IProductBundlesApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all product bundles, relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductBundles(skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductBundleDto>;
    protected processGetAllProductBundles(response: AxiosResponse): Promise<PagedOfProductBundleDto>;
    /**
     * Returns a product bundle by its identifier.
     * @param id Product identifier.
     * @param productBundleVersionId (optional) Product bundle version identifier. Optional
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductBundle(id: number, productBundleVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductBundleDto>;
    protected processGetProductBundle(response: AxiosResponse): Promise<ProductBundleDto>;
    /**
     * Returns a product bundle personalization parameters by product identifier.
     * @param id Product bundle identifier.
     * @param productBundleVersionId (optional) Product bundle version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductBundlePersonalizationParameters(id: number, productBundleVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationParametersDto>;
    protected processGetProductBundlePersonalizationParameters(response: AxiosResponse): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product bundle summary by product bundle identifier.
     * @param id Product bundle identifier.
     * @param productBundleVersionId (optional) Product bundle version identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param sku (optional) Product variant SKU.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSummary(id: number, productBundleVersionId?: number | null | undefined, productVariantId?: number | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductSummaryDto>;
    protected processGetProductSummary(response: AxiosResponse): Promise<ProductSummaryDto>;
    /**
     * Returns a product bundle personalization workflow description by product bundle identifier.
     * @param id Product bundle identifier.
     * @param productBundleVersionId (optional) Product bundle version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(id: number, productBundleVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationWorkflowDto>;
    protected processGetPersonalizationWorkflow(response: AxiosResponse): Promise<PersonalizationWorkflowDto>;
}
export interface IProductLinksApiClient {
    /**
     * Returns all product links, relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductLinks(skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductLinkDto>;
    /**
     * Returns a product link by its identifier.
     * @param id Product identifier.
     * @param productLinkVersionId (optional) Product link version identifier. Optional
     * @param productVersionId (optional) Product version identifier which represents linked product version. Optional
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLink(id: number, productLinkVersionId?: number | null | undefined, productVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<ProductLinkDto>;
    /**
     * Returns a product link personalization parameters by product identifier.
     * @param id Product link identifier.
     * @param productLinkVersionId (optional) Product link version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLinkPersonalizationParameters(id: number, productLinkVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product link summary by product link identifier.
     * @param id Product link identifier.
     * @param productLinkVersionId (optional) Product link version identifier.
     * @param productVersionId (optional) Product link identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param sku (optional) Product variant SKU.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSummary(id: number, productLinkVersionId?: number | null | undefined, productVersionId?: number | null | undefined, productVariantId?: number | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined): Promise<ProductSummaryDto>;
    /**
     * Returns a product link personalization workflow description by product link identifier.
     * @param id Product link identifier.
     * @param productLinkVersionId (optional) Product link version identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productFilterId (optional) Product filter identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(id: number, productLinkVersionId?: number | null | undefined, productVersionId?: number | null | undefined, productFilterId?: number | null | undefined, tenantId?: number | null | undefined): Promise<PersonalizationWorkflowDto>;
}
export declare class ProductLinksApiClient extends ApiClientBase implements IProductLinksApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all product links, relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductLinks(skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductLinkDto>;
    protected processGetAllProductLinks(response: AxiosResponse): Promise<PagedOfProductLinkDto>;
    /**
     * Returns a product link by its identifier.
     * @param id Product identifier.
     * @param productLinkVersionId (optional) Product link version identifier. Optional
     * @param productVersionId (optional) Product version identifier which represents linked product version. Optional
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLink(id: number, productLinkVersionId?: number | null | undefined, productVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductLinkDto>;
    protected processGetProductLink(response: AxiosResponse): Promise<ProductLinkDto>;
    /**
     * Returns a product link personalization parameters by product identifier.
     * @param id Product link identifier.
     * @param productLinkVersionId (optional) Product link version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLinkPersonalizationParameters(id: number, productLinkVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationParametersDto>;
    protected processGetProductLinkPersonalizationParameters(response: AxiosResponse): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product link summary by product link identifier.
     * @param id Product link identifier.
     * @param productLinkVersionId (optional) Product link version identifier.
     * @param productVersionId (optional) Product link identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param sku (optional) Product variant SKU.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSummary(id: number, productLinkVersionId?: number | null | undefined, productVersionId?: number | null | undefined, productVariantId?: number | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductSummaryDto>;
    protected processGetProductSummary(response: AxiosResponse): Promise<ProductSummaryDto>;
    /**
     * Returns a product link personalization workflow description by product link identifier.
     * @param id Product link identifier.
     * @param productLinkVersionId (optional) Product link version identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productFilterId (optional) Product filter identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(id: number, productLinkVersionId?: number | null | undefined, productVersionId?: number | null | undefined, productFilterId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationWorkflowDto>;
    protected processGetPersonalizationWorkflow(response: AxiosResponse): Promise<PersonalizationWorkflowDto>;
}
export interface IProductReferencesApiClient {
    /**
     * Returns all storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductReferenceDto>;
    /**
     * Returns a list of product specifications associated with storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductSpecifications(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductSpecificationDto>;
    /**
     * Returns a list of products associated with storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProducts(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductDto>;
    /**
     * Returns a list of product links associated with storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductLinks(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductLinkDto>;
    /**
     * Returns a list of product bundles associated with storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductBundles(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductBundleDto>;
    /**
     * Returns a storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(reference: string | null, storefrontId: number, tenantId?: number | null | undefined): Promise<ProductReferenceDto>;
    /**
     * Returns a personalization parameters by the storefront product reference.
     * @param reference Product reference - external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationParameters(reference: string | null, storefrontId: number, tenantId?: number | null | undefined): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product specification by the storefront product reference.
     * @param reference Product reference - external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSpecification(reference: string | null, storefrontId: number, tenantId?: number | null | undefined): Promise<ProductSpecificationDto>;
    /**
     * Returns a product by storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProduct(reference: string | null, storefrontId: number, tenantId?: number | null | undefined): Promise<ProductDto>;
    /**
     * Returns a product summary by storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param sku (optional) Product variant SKU.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSummary(reference: string | null, storefrontId: number, productVariantId?: number | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined): Promise<ProductSummaryDto>;
    /**
     * Returns a product link by storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLink(reference: string | null, storefrontId: number, tenantId?: number | null | undefined): Promise<ProductLinkDto>;
    /**
     * Returns a product bundle by storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductBundle(reference: string | null, storefrontId: number, tenantId?: number | null | undefined): Promise<ProductBundleDto>;
    /**
     * Returns a product cost details from ecommerce system.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param sku Product SKU.
     * @param storefrontId Storefront identifier.
     * @param storefrontUserId (optional) Storefront user identifier.
     * @param currencyCode (optional) Product cost currency code.
     * @param quantity (optional) Product quantity.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductCostDetails(reference: string | null, sku: string, storefrontId: number, storefrontUserId?: string | null | undefined, currencyCode?: string | null | undefined, quantity?: number | undefined, tenantId?: number | null | undefined): Promise<ProductCostDetailsDto>;
    /**
     * Returns a product personalization workflow.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId (optional) Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(reference: string | null, storefrontId?: number | undefined, tenantId?: number | null | undefined): Promise<PersonalizationWorkflowDto>;
}
export declare class ProductReferencesApiClient extends ApiClientBase implements IProductReferencesApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductReferenceDto>;
    protected processGetAll(response: AxiosResponse): Promise<PagedOfProductReferenceDto>;
    /**
     * Returns a list of product specifications associated with storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductSpecifications(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductSpecificationDto>;
    protected processGetAllProductSpecifications(response: AxiosResponse): Promise<PagedOfProductSpecificationDto>;
    /**
     * Returns a list of products associated with storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProducts(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductDto>;
    protected processGetAllProducts(response: AxiosResponse): Promise<PagedOfProductDto>;
    /**
     * Returns a list of product links associated with storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductLinks(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductLinkDto>;
    protected processGetAllProductLinks(response: AxiosResponse): Promise<PagedOfProductLinkDto>;
    /**
     * Returns a list of product bundles associated with storefront product references relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param productReference (optional) Product reference filter.
    Product reference is an external reference to Customer's Canvas product, e.g online store product identifier.
     * @param productSpecificationId (optional) Customer's Canvas product specification filter.
     * @param productId (optional) Customer's Canvas product filter.
     * @param productLinkId (optional) Customer's Canvas product link filter.
     * @param productBundleId (optional) Customer's Canvas product bundle filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU filter.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductBundles(storefrontId: number, productReference?: string | null | undefined, productSpecificationId?: number | null | undefined, productId?: number | null | undefined, productLinkId?: number | null | undefined, productBundleId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductBundleDto>;
    protected processGetAllProductBundles(response: AxiosResponse): Promise<PagedOfProductBundleDto>;
    /**
     * Returns a storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(reference: string | null, storefrontId: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductReferenceDto>;
    protected processGet(response: AxiosResponse): Promise<ProductReferenceDto>;
    /**
     * Returns a personalization parameters by the storefront product reference.
     * @param reference Product reference - external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationParameters(reference: string | null, storefrontId: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationParametersDto>;
    protected processGetPersonalizationParameters(response: AxiosResponse): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product specification by the storefront product reference.
     * @param reference Product reference - external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSpecification(reference: string | null, storefrontId: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductSpecificationDto>;
    protected processGetProductSpecification(response: AxiosResponse): Promise<ProductSpecificationDto>;
    /**
     * Returns a product by storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProduct(reference: string | null, storefrontId: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductDto>;
    protected processGetProduct(response: AxiosResponse): Promise<ProductDto>;
    /**
     * Returns a product summary by storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param sku (optional) Product variant SKU.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSummary(reference: string | null, storefrontId: number, productVariantId?: number | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductSummaryDto>;
    protected processGetProductSummary(response: AxiosResponse): Promise<ProductSummaryDto>;
    /**
     * Returns a product link by storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLink(reference: string | null, storefrontId: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductLinkDto>;
    protected processGetProductLink(response: AxiosResponse): Promise<ProductLinkDto>;
    /**
     * Returns a product bundle by storefront product reference.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductBundle(reference: string | null, storefrontId: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductBundleDto>;
    protected processGetProductBundle(response: AxiosResponse): Promise<ProductBundleDto>;
    /**
     * Returns a product cost details from ecommerce system.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param sku Product SKU.
     * @param storefrontId Storefront identifier.
     * @param storefrontUserId (optional) Storefront user identifier.
     * @param currencyCode (optional) Product cost currency code.
     * @param quantity (optional) Product quantity.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductCostDetails(reference: string | null, sku: string, storefrontId: number, storefrontUserId?: string | null | undefined, currencyCode?: string | null | undefined, quantity?: number | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductCostDetailsDto>;
    protected processGetProductCostDetails(response: AxiosResponse): Promise<ProductCostDetailsDto>;
    /**
     * Returns a product personalization workflow.
     * @param reference An external reference to Customer's Canvas product, e.g online store product identifier.
     * @param storefrontId (optional) Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(reference: string | null, storefrontId?: number | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationWorkflowDto>;
    protected processGetPersonalizationWorkflow(response: AxiosResponse): Promise<PersonalizationWorkflowDto>;
}
export interface IProductsApiClient {
    /**
     * Returns all products, relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProducts(skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductDto>;
    /**
     * Returns a product by identifier.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProduct(id: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<ProductDto>;
    /**
     * Returns a product personalization parameters by product identifier.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationParameters(id: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product summary by product identifier.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productLinkId (optional) Product link identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param sku (optional) Product variant SKU.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSummary(id: number, productVersionId?: number | null | undefined, productLinkId?: number | null | undefined, productVariantId?: number | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined): Promise<ProductSummaryDto>;
    /**
     * Returns a list of product options.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductOptions(id: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductOptionDto>;
    /**
     * Returns a list of product options for all products.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductOptions(tenantId?: number | null | undefined): Promise<PagedOfProductOptionDto>;
    /**
     * Returns a list of product links.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLinks(id: number, productVersionId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductLinkDto>;
    /**
     * Returns a product link.
     * @param id Product identifier.
     * @param productLinkId Product link identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLink(id: number, productLinkId: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<ProductLinkDto>;
    /**
     * Returns a list of product variants.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param options (optional) Defines options filter e.g.: "{ "opt1_id": "opt1_val1_id, opt1_val2_id", "opt2_id": "opt2_val1_id" }".
     * @param productFilterId (optional) Defines special filter based on product filter with specified identifier.
     * @param takeAvailableOnly (optional) Defines special filter for available product variants.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariants(id: number, productVersionId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, options?: string | null | undefined, productFilterId?: number | null | undefined, takeAvailableOnly?: boolean | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductVariantDto>;
    /**
     * Returns a product variant.
     * @param id Product identifier.
     * @param productVariantId Product variant identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariant(id: number, productVariantId: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<ProductVariantDto>;
    /**
     * Returns a list of product variant designs.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param search (optional) Search string for design name partial match.
     * @param designCustomFields (optional) Custom attributes dictionary filter for designs. For example: {"public":"true","name":"my item"}
     * @param designPath (optional) Path filter for designs. Subfolders included by default.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param options (optional) Defines options filter e.g.: "{ "opt1_id": "opt1_val1_id, opt1_val2_id", "opt2_id": "opt2_val1_id" }".
     * @param productFilterId (optional) Defines special filter based on product filter with specified identifier.
     * @param takeAvailableOnly (optional) Defines special filter for available product variants.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariantDesigns(id: number, productVersionId?: number | null | undefined, productVariantId?: number | null | undefined, search?: string | null | undefined, designCustomFields?: string | null | undefined, designPath?: string | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, options?: string | null | undefined, productFilterId?: number | null | undefined, takeAvailableOnly?: boolean | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductVariantDesignDto>;
    /**
     * Returns a list of product variant mockups.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param search (optional) Search string for design name partial match.
     * @param mockupCustomFields (optional) Custom attributes dictionary filter for mockups. For example: {"public":"true","name":"my item"}
     * @param mockupPath (optional) Path filter for mockups. Subfolders included by default.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param options (optional) Defines options filter e.g.: "{ "opt1_id": "opt1_val1_id, opt1_val2_id", "opt2_id": "opt2_val1_id" }".
     * @param productFilterId (optional) Defines special filter based on product filter with specified identifier.
     * @param takeAvailableOnly (optional) Defines special filter for available product variants.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariantMockups(id: number, productVersionId?: number | null | undefined, productVariantId?: number | null | undefined, search?: string | null | undefined, mockupCustomFields?: string | null | undefined, mockupPath?: string | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, options?: string | null | undefined, productFilterId?: number | null | undefined, takeAvailableOnly?: boolean | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductVariantMockupDto>;
    /**
     * Returns a list of product variant documents.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param search (optional) Search string for document name partial match.
     * @param documentCustomFields (optional) Custom attributes dictionary filter for documents. For example: {"public":"true","name":"my item"}
     * @param documentPath (optional) Path filter for documents. Subfolders included by default.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param options (optional) Defines options filter e.g.: "{ "opt1_id": "opt1_val1_id, opt1_val2_id", "opt2_id": "opt2_val1_id" }".
     * @param productFilterId (optional) Defines special filter based on product filter with specified identifier.
     * @param takeAvailableOnly (optional) Defines special filter for available product variants.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariantDocuments(id: number, productVersionId?: number | null | undefined, productVariantId?: number | null | undefined, search?: string | null | undefined, documentCustomFields?: string | null | undefined, documentPath?: string | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, options?: string | null | undefined, productFilterId?: number | null | undefined, takeAvailableOnly?: boolean | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductVariantDocumentDto>;
    /**
     * Updates product variant resources.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    updateProductVariantResources(id: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined): Promise<void>;
    /**
     * Returns a list of all available product tags.
     * @param search (optional) Search string for partial match.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAvailableProductTags(search?: string | null | undefined, tenantId?: number | null | undefined): Promise<string[]>;
    /**
     * Returns a product personalization workflow description by product identifier.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productLinkId (optional) Product link identifier.
     * @param productFilterId (optional) Product filter identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(id: number, productVersionId?: number | null | undefined, productLinkId?: number | null | undefined, productFilterId?: number | null | undefined, tenantId?: number | null | undefined): Promise<PersonalizationWorkflowDto>;
}
export declare class ProductsApiClient extends ApiClientBase implements IProductsApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all products, relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tags (optional) List of tags that product should have.
     * @param customFields (optional) Serialized custom fields dictionary filter. For example: {"public":"true","name":"my item"}.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProducts(skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, sku?: string | null | undefined, tags?: string[] | null | undefined, customFields?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductDto>;
    protected processGetAllProducts(response: AxiosResponse): Promise<PagedOfProductDto>;
    /**
     * Returns a product by identifier.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProduct(id: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductDto>;
    protected processGetProduct(response: AxiosResponse): Promise<ProductDto>;
    /**
     * Returns a product personalization parameters by product identifier.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationParameters(id: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationParametersDto>;
    protected processGetPersonalizationParameters(response: AxiosResponse): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product summary by product identifier.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productLinkId (optional) Product link identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param sku (optional) Product variant SKU.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSummary(id: number, productVersionId?: number | null | undefined, productLinkId?: number | null | undefined, productVariantId?: number | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductSummaryDto>;
    protected processGetProductSummary(response: AxiosResponse): Promise<ProductSummaryDto>;
    /**
     * Returns a list of product options.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductOptions(id: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductOptionDto>;
    protected processGetProductOptions(response: AxiosResponse): Promise<PagedOfProductOptionDto>;
    /**
     * Returns a list of product options for all products.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllProductOptions(tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductOptionDto>;
    protected processGetAllProductOptions(response: AxiosResponse): Promise<PagedOfProductOptionDto>;
    /**
     * Returns a list of product links.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLinks(id: number, productVersionId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductLinkDto>;
    protected processGetProductLinks(response: AxiosResponse): Promise<PagedOfProductLinkDto>;
    /**
     * Returns a product link.
     * @param id Product identifier.
     * @param productLinkId Product link identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductLink(id: number, productLinkId: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductLinkDto>;
    protected processGetProductLink(response: AxiosResponse): Promise<ProductLinkDto>;
    /**
     * Returns a list of product variants.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param options (optional) Defines options filter e.g.: "{ "opt1_id": "opt1_val1_id, opt1_val2_id", "opt2_id": "opt2_val1_id" }".
     * @param productFilterId (optional) Defines special filter based on product filter with specified identifier.
     * @param takeAvailableOnly (optional) Defines special filter for available product variants.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariants(id: number, productVersionId?: number | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, options?: string | null | undefined, productFilterId?: number | null | undefined, takeAvailableOnly?: boolean | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductVariantDto>;
    protected processGetProductVariants(response: AxiosResponse): Promise<PagedOfProductVariantDto>;
    /**
     * Returns a product variant.
     * @param id Product identifier.
     * @param productVariantId Product variant identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariant(id: number, productVariantId: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductVariantDto>;
    protected processGetProductVariant(response: AxiosResponse): Promise<ProductVariantDto>;
    /**
     * Returns a list of product variant designs.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param search (optional) Search string for design name partial match.
     * @param designCustomFields (optional) Custom attributes dictionary filter for designs. For example: {"public":"true","name":"my item"}
     * @param designPath (optional) Path filter for designs. Subfolders included by default.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param options (optional) Defines options filter e.g.: "{ "opt1_id": "opt1_val1_id, opt1_val2_id", "opt2_id": "opt2_val1_id" }".
     * @param productFilterId (optional) Defines special filter based on product filter with specified identifier.
     * @param takeAvailableOnly (optional) Defines special filter for available product variants.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariantDesigns(id: number, productVersionId?: number | null | undefined, productVariantId?: number | null | undefined, search?: string | null | undefined, designCustomFields?: string | null | undefined, designPath?: string | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, options?: string | null | undefined, productFilterId?: number | null | undefined, takeAvailableOnly?: boolean | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductVariantDesignDto>;
    protected processGetProductVariantDesigns(response: AxiosResponse): Promise<PagedOfProductVariantDesignDto>;
    /**
     * Returns a list of product variant mockups.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param search (optional) Search string for design name partial match.
     * @param mockupCustomFields (optional) Custom attributes dictionary filter for mockups. For example: {"public":"true","name":"my item"}
     * @param mockupPath (optional) Path filter for mockups. Subfolders included by default.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param options (optional) Defines options filter e.g.: "{ "opt1_id": "opt1_val1_id, opt1_val2_id", "opt2_id": "opt2_val1_id" }".
     * @param productFilterId (optional) Defines special filter based on product filter with specified identifier.
     * @param takeAvailableOnly (optional) Defines special filter for available product variants.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariantMockups(id: number, productVersionId?: number | null | undefined, productVariantId?: number | null | undefined, search?: string | null | undefined, mockupCustomFields?: string | null | undefined, mockupPath?: string | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, options?: string | null | undefined, productFilterId?: number | null | undefined, takeAvailableOnly?: boolean | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductVariantMockupDto>;
    protected processGetProductVariantMockups(response: AxiosResponse): Promise<PagedOfProductVariantMockupDto>;
    /**
     * Returns a list of product variant documents.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productVariantId (optional) Product variant identifier.
     * @param search (optional) Search string for document name partial match.
     * @param documentCustomFields (optional) Custom attributes dictionary filter for documents. For example: {"public":"true","name":"my item"}
     * @param documentPath (optional) Path filter for documents. Subfolders included by default.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param options (optional) Defines options filter e.g.: "{ "opt1_id": "opt1_val1_id, opt1_val2_id", "opt2_id": "opt2_val1_id" }".
     * @param productFilterId (optional) Defines special filter based on product filter with specified identifier.
     * @param takeAvailableOnly (optional) Defines special filter for available product variants.
     * @param sku (optional) SKU of linked ecommerce product.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductVariantDocuments(id: number, productVersionId?: number | null | undefined, productVariantId?: number | null | undefined, search?: string | null | undefined, documentCustomFields?: string | null | undefined, documentPath?: string | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, options?: string | null | undefined, productFilterId?: number | null | undefined, takeAvailableOnly?: boolean | null | undefined, sku?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductVariantDocumentDto>;
    protected processGetProductVariantDocuments(response: AxiosResponse): Promise<PagedOfProductVariantDocumentDto>;
    /**
     * Updates product variant resources.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    updateProductVariantResources(id: number, productVersionId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<void>;
    protected processUpdateProductVariantResources(response: AxiosResponse): Promise<void>;
    /**
     * Returns a list of all available product tags.
     * @param search (optional) Search string for partial match.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAvailableProductTags(search?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<string[]>;
    protected processGetAvailableProductTags(response: AxiosResponse): Promise<string[]>;
    /**
     * Returns a product personalization workflow description by product identifier.
     * @param id Product identifier.
     * @param productVersionId (optional) Product version identifier.
     * @param productLinkId (optional) Product link identifier.
     * @param productFilterId (optional) Product filter identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(id: number, productVersionId?: number | null | undefined, productLinkId?: number | null | undefined, productFilterId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationWorkflowDto>;
    protected processGetPersonalizationWorkflow(response: AxiosResponse): Promise<PersonalizationWorkflowDto>;
}
export interface IProductSpecificationsApiClient {
    /**
     * Returns all product specifications, relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProductSpecificationDto>;
    /**
     * Returns a product specification by identifier.
     * @param id Product specification identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: number, tenantId?: number | null | undefined): Promise<ProductSpecificationDto>;
    /**
     * Returns a product specification personalization parameters by product identifier.
     * @param id Product specification identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSpecificationSummary(id: number, tenantId?: number | null | undefined): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product personalization workflow description by product specification identifier.
     * @param id Product specification identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(id: number, tenantId?: number | null | undefined): Promise<PersonalizationWorkflowDto>;
}
export declare class ProductSpecificationsApiClient extends ApiClientBase implements IProductSpecificationsApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all product specifications, relevant to the specified query parameters.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProductSpecificationDto>;
    protected processGetAll(response: AxiosResponse): Promise<PagedOfProductSpecificationDto>;
    /**
     * Returns a product specification by identifier.
     * @param id Product specification identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProductSpecificationDto>;
    protected processGet(response: AxiosResponse): Promise<ProductSpecificationDto>;
    /**
     * Returns a product specification personalization parameters by product identifier.
     * @param id Product specification identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProductSpecificationSummary(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationParametersDto>;
    protected processGetProductSpecificationSummary(response: AxiosResponse): Promise<PersonalizationParametersDto>;
    /**
     * Returns a product personalization workflow description by product specification identifier.
     * @param id Product specification identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPersonalizationWorkflow(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PersonalizationWorkflowDto>;
    protected processGetPersonalizationWorkflow(response: AxiosResponse): Promise<PersonalizationWorkflowDto>;
}
export interface IProjectsApiClient {
    /**
     * Returns all projects, relevant to the specified query parameters.
     * @param ownerId (optional) Project owner (storefront user id) filter.
     * @param productReference (optional) Product reference filter.
     * @param status (optional) Project status filter.
     * @param datePeriod (optional) Project date period filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param orderId (optional) Identifier of corresponding order.
     * @param processingStatus (optional) Project processing status filter.
     * @param includeObsolete (optional) Indicates if obsolete projects prepared to be removed should be included to result.
     * @param storefrontId (optional) Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(ownerId?: string | null | undefined, productReference?: string | null | undefined, status?: number | null | undefined, datePeriod?: DatePeriod | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, orderId?: string | null | undefined, processingStatus?: ProjectProcessingStatus | null | undefined, includeObsolete?: boolean | undefined, storefrontId?: number | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfProjectDto>;
    /**
     * Returns a project by identifier.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: number, tenantId?: number | null | undefined): Promise<ProjectDto>;
    /**
     * Removes a project by identifier.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    delete(id: number, tenantId?: number | null | undefined): Promise<void>;
    /**
     * Returns a project preview file by project identifier.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPreview(id: number, tenantId?: number | null | undefined): Promise<FileResponse>;
    /**
     * Returns a project preview URL by project identifier.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPreviewUrl(id: number, tenantId?: number | null | undefined): Promise<string>;
    /**
     * Creates a new project with single item.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Create operation parameters.
     * @return Success
     */
    createWithSingleItem(storefrontId: number, tenantId?: number | null | undefined, body?: CreateSingleItemProjectDto | null | undefined): Promise<ProjectDto>;
    /**
     * Creates a new project with multiple items.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Create operation parameters.
     * @return Success
     */
    createWithMultipleItems(storefrontId: number, tenantId?: number | null | undefined, body?: CreateMultiItemProjectDto | null | undefined): Promise<ProjectDto>;
    /**
     * Creates a new project by 'Render HiRes' scenario.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Create operation parameters.
     * @return Success
     */
    createByRenderHiResScenario(storefrontId: number, tenantId?: number | null | undefined, body?: CreateProjectByRenderHiResScenarioDto | null | undefined): Promise<ProjectDto>;
    /**
     * Creates a new project by 'Specific Pipeline' scenario.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Create operation parameters.
     * @return Success
     */
    createBySpecificPipelineScenario(storefrontId: number, tenantId?: number | null | undefined, body?: CreateProjectBySpecificPipelineScenarioDto | null | undefined): Promise<ProjectDto>;
    /**
     * Returns all available status transitions for a project.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAvailableTransitions(id: number, tenantId?: number | null | undefined): Promise<PagedOfProjectStatusTransitionDto>;
    /**
     * Changes the project status.
     * @param id Project identifier
     * @param transition Transition identifying name.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    changeStatus(id: number, transition: string | null, tenantId?: number | null | undefined): Promise<ProjectStatusDto>;
    /**
     * Changes the project status forcibly without a proper transition.
     * @param id Project identifier.
     * @param status Project status code.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    forceStatus(id: number, status: number, tenantId?: number | null | undefined): Promise<ProjectStatusDto>;
    /**
     * Deletes specified projects.
    These projects will be hide from projects list immediately, but complete projects data cleaning will take some additional time.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Operation parameters.
     * @return Success
     */
    batchDelete(tenantId?: number | null | undefined, body?: BatchDeleteProjectsInput | null | undefined): Promise<PagedOfProjectStatusDto>;
    /**
     * Returns a list of all existing project statuses.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllStatuses(tenantId?: number | null | undefined): Promise<PagedOfProjectStatusDto>;
    /**
     * Returns a list of all existing project status transitions.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllTransitions(tenantId?: number | null | undefined): Promise<PagedOfProjectStatusTransitionDto>;
    /**
     * Returns a project processing results.
     * @param id Project identifier.
     * @param itemId (optional) Project item identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProjectProcessingResults(id: number, itemId?: number | null | undefined, tenantId?: number | null | undefined): Promise<ProjectProcessingResultsDto>;
    /**
     * Resumes project processing.
     * @param id Project identifier.
     * @param itemId (optional) Project item identifier. If value is set, only specified item processing will be resumed.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    resumeProjectProcessing(id: number, itemId?: number | null | undefined, tenantId?: number | null | undefined): Promise<void>;
    /**
     * Restarts a project processing routine.
     * @param id Project identifier.
     * @param itemId (optional) Project item identifier. If value is set, only specified item processing will be restarted.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    restartProjectProcessing(id: number, itemId?: number | null | undefined, tenantId?: number | null | undefined): Promise<void>;
    /**
     * Returns an order description from the ecommerce system for the specified project.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProjectOrder(id: number, tenantId?: number | null | undefined): Promise<any>;
    /**
     * Attachs the specified data to the project's order in ecommerce system.
     * @param id Project identifier.
     * @param itemId (optional) Project item identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) A list of data items, which should be attached to project's order.
     * @return Success
     */
    attachDataToProjectOrder(id: number, itemId?: number | null | undefined, tenantId?: number | null | undefined, body?: OrderDataItemDto[] | null | undefined): Promise<void>;
}
export declare class ProjectsApiClient extends ApiClientBase implements IProjectsApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all projects, relevant to the specified query parameters.
     * @param ownerId (optional) Project owner (storefront user id) filter.
     * @param productReference (optional) Product reference filter.
     * @param status (optional) Project status filter.
     * @param datePeriod (optional) Project date period filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param orderId (optional) Identifier of corresponding order.
     * @param processingStatus (optional) Project processing status filter.
     * @param includeObsolete (optional) Indicates if obsolete projects prepared to be removed should be included to result.
     * @param storefrontId (optional) Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(ownerId?: string | null | undefined, productReference?: string | null | undefined, status?: number | null | undefined, datePeriod?: DatePeriod | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, orderId?: string | null | undefined, processingStatus?: ProjectProcessingStatus | null | undefined, includeObsolete?: boolean | undefined, storefrontId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProjectDto>;
    protected processGetAll(response: AxiosResponse): Promise<PagedOfProjectDto>;
    /**
     * Returns a project by identifier.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProjectDto>;
    protected processGet(response: AxiosResponse): Promise<ProjectDto>;
    /**
     * Removes a project by identifier.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    delete(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<void>;
    protected processDelete(response: AxiosResponse): Promise<void>;
    /**
     * Returns a project preview file by project identifier.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPreview(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<FileResponse>;
    protected processGetPreview(response: AxiosResponse): Promise<FileResponse>;
    /**
     * Returns a project preview URL by project identifier.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getPreviewUrl(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<string>;
    protected processGetPreviewUrl(response: AxiosResponse): Promise<string>;
    /**
     * Creates a new project with single item.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Create operation parameters.
     * @return Success
     */
    createWithSingleItem(storefrontId: number, tenantId?: number | null | undefined, body?: CreateSingleItemProjectDto | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProjectDto>;
    protected processCreateWithSingleItem(response: AxiosResponse): Promise<ProjectDto>;
    /**
     * Creates a new project with multiple items.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Create operation parameters.
     * @return Success
     */
    createWithMultipleItems(storefrontId: number, tenantId?: number | null | undefined, body?: CreateMultiItemProjectDto | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProjectDto>;
    protected processCreateWithMultipleItems(response: AxiosResponse): Promise<ProjectDto>;
    /**
     * Creates a new project by 'Render HiRes' scenario.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Create operation parameters.
     * @return Success
     */
    createByRenderHiResScenario(storefrontId: number, tenantId?: number | null | undefined, body?: CreateProjectByRenderHiResScenarioDto | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProjectDto>;
    protected processCreateByRenderHiResScenario(response: AxiosResponse): Promise<ProjectDto>;
    /**
     * Creates a new project by 'Specific Pipeline' scenario.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Create operation parameters.
     * @return Success
     */
    createBySpecificPipelineScenario(storefrontId: number, tenantId?: number | null | undefined, body?: CreateProjectBySpecificPipelineScenarioDto | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProjectDto>;
    protected processCreateBySpecificPipelineScenario(response: AxiosResponse): Promise<ProjectDto>;
    /**
     * Returns all available status transitions for a project.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAvailableTransitions(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProjectStatusTransitionDto>;
    protected processGetAvailableTransitions(response: AxiosResponse): Promise<PagedOfProjectStatusTransitionDto>;
    /**
     * Changes the project status.
     * @param id Project identifier
     * @param transition Transition identifying name.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    changeStatus(id: number, transition: string | null, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProjectStatusDto>;
    protected processChangeStatus(response: AxiosResponse): Promise<ProjectStatusDto>;
    /**
     * Changes the project status forcibly without a proper transition.
     * @param id Project identifier.
     * @param status Project status code.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    forceStatus(id: number, status: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProjectStatusDto>;
    protected processForceStatus(response: AxiosResponse): Promise<ProjectStatusDto>;
    /**
     * Deletes specified projects.
    These projects will be hide from projects list immediately, but complete projects data cleaning will take some additional time.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Operation parameters.
     * @return Success
     */
    batchDelete(tenantId?: number | null | undefined, body?: BatchDeleteProjectsInput | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProjectStatusDto>;
    protected processBatchDelete(response: AxiosResponse): Promise<PagedOfProjectStatusDto>;
    /**
     * Returns a list of all existing project statuses.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllStatuses(tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProjectStatusDto>;
    protected processGetAllStatuses(response: AxiosResponse): Promise<PagedOfProjectStatusDto>;
    /**
     * Returns a list of all existing project status transitions.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAllTransitions(tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfProjectStatusTransitionDto>;
    protected processGetAllTransitions(response: AxiosResponse): Promise<PagedOfProjectStatusTransitionDto>;
    /**
     * Returns a project processing results.
     * @param id Project identifier.
     * @param itemId (optional) Project item identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProjectProcessingResults(id: number, itemId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<ProjectProcessingResultsDto>;
    protected processGetProjectProcessingResults(response: AxiosResponse): Promise<ProjectProcessingResultsDto>;
    /**
     * Resumes project processing.
     * @param id Project identifier.
     * @param itemId (optional) Project item identifier. If value is set, only specified item processing will be resumed.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    resumeProjectProcessing(id: number, itemId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<void>;
    protected processResumeProjectProcessing(response: AxiosResponse): Promise<void>;
    /**
     * Restarts a project processing routine.
     * @param id Project identifier.
     * @param itemId (optional) Project item identifier. If value is set, only specified item processing will be restarted.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    restartProjectProcessing(id: number, itemId?: number | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<void>;
    protected processRestartProjectProcessing(response: AxiosResponse): Promise<void>;
    /**
     * Returns an order description from the ecommerce system for the specified project.
     * @param id Project identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getProjectOrder(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<any>;
    protected processGetProjectOrder(response: AxiosResponse): Promise<any>;
    /**
     * Attachs the specified data to the project's order in ecommerce system.
     * @param id Project identifier.
     * @param itemId (optional) Project item identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) A list of data items, which should be attached to project's order.
     * @return Success
     */
    attachDataToProjectOrder(id: number, itemId?: number | null | undefined, tenantId?: number | null | undefined, body?: OrderDataItemDto[] | null | undefined, cancelToken?: CancelToken | undefined): Promise<void>;
    protected processAttachDataToProjectOrder(response: AxiosResponse): Promise<void>;
}
export interface IStorefrontsApiClient {
    /**
     * Returns all storefronts, relevant to the specified query parameters.
     * @param types (optional) Storefront type filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param status (optional) Storefront status.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(types?: StorefrontType[] | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, status?: StorefrontStatus | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfStorefrontDto>;
    /**
     * Returns a storefront by identifier.
     * @param id Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: number, tenantId?: number | null | undefined): Promise<StorefrontDto>;
}
export declare class StorefrontsApiClient extends ApiClientBase implements IStorefrontsApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all storefronts, relevant to the specified query parameters.
     * @param types (optional) Storefront type filter.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param status (optional) Storefront status.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(types?: StorefrontType[] | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, status?: StorefrontStatus | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfStorefrontDto>;
    protected processGetAll(response: AxiosResponse): Promise<PagedOfStorefrontDto>;
    /**
     * Returns a storefront by identifier.
     * @param id Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<StorefrontDto>;
    protected processGet(response: AxiosResponse): Promise<StorefrontDto>;
}
export interface IStorefrontUsersApiClient {
    /**
     * Returns all storefront users, relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param storefrontUserId (optional) Storefront user identifier.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param includeAnonymous (optional) Flag that indicates if anonymous users should be included. `True` by default.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(storefrontId: number, storefrontUserId?: string | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, includeAnonymous?: boolean | null | undefined, tenantId?: number | null | undefined): Promise<PagedOfStorefrontUserDto>;
    /**
     * Creates a new storefront user.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Operation parameters.
     * @return Success
     */
    create(storefrontId: number, tenantId?: number | null | undefined, body?: CreateStorefrontUserDto | null | undefined): Promise<StorefrontUserDto>;
    /**
     * Returns a storefront user by identifier.
     * @param id Storefront user identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: string | null, storefrontId: number, tenantId?: number | null | undefined): Promise<StorefrontUserDto>;
    /**
     * Registers a storefront user with the specified identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Operation parameters.
     * @return Success
     */
    register(storefrontId: number, tenantId?: number | null | undefined, body?: RegisterStorefrontUserInput | null | undefined): Promise<StorefrontUserDto>;
    /**
     * Transfers all existing data for the anonymous storefront user to the selected regular storefront user account.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Operation parameters.
     * @return Success
     */
    mergeAnonymous(storefrontId: number, tenantId?: number | null | undefined, body?: MergeAnonymousUserDataInput | null | undefined): Promise<void>;
    /**
     * Returns an API access token for the specified storefront user.
     * @param storefrontUserId Storefront user identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getToken(storefrontUserId: string, storefrontId: number, tenantId?: number | null | undefined): Promise<string>;
}
export declare class StorefrontUsersApiClient extends ApiClientBase implements IStorefrontUsersApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns all storefront users, relevant to the specified query parameters.
     * @param storefrontId Storefront identifier.
     * @param storefrontUserId (optional) Storefront user identifier.
     * @param skip (optional) Defines page start offset from beginning of sorted result list.
     * @param take (optional) Defines page length (how many consequent items of sorted result list should be taken).
     * @param sorting (optional) Defines sorting order of result list e.g.: "Title ASC, LastModified DESC".
     * @param search (optional) Search string for partial match.
     * @param includeAnonymous (optional) Flag that indicates if anonymous users should be included. `True` by default.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getAll(storefrontId: number, storefrontUserId?: string | null | undefined, skip?: number | null | undefined, take?: number | null | undefined, sorting?: string | null | undefined, search?: string | null | undefined, includeAnonymous?: boolean | null | undefined, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<PagedOfStorefrontUserDto>;
    protected processGetAll(response: AxiosResponse): Promise<PagedOfStorefrontUserDto>;
    /**
     * Creates a new storefront user.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Operation parameters.
     * @return Success
     */
    create(storefrontId: number, tenantId?: number | null | undefined, body?: CreateStorefrontUserDto | null | undefined, cancelToken?: CancelToken | undefined): Promise<StorefrontUserDto>;
    protected processCreate(response: AxiosResponse): Promise<StorefrontUserDto>;
    /**
     * Returns a storefront user by identifier.
     * @param id Storefront user identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    get(id: string | null, storefrontId: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<StorefrontUserDto>;
    protected processGet(response: AxiosResponse): Promise<StorefrontUserDto>;
    /**
     * Registers a storefront user with the specified identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Operation parameters.
     * @return Success
     */
    register(storefrontId: number, tenantId?: number | null | undefined, body?: RegisterStorefrontUserInput | null | undefined, cancelToken?: CancelToken | undefined): Promise<StorefrontUserDto>;
    protected processRegister(response: AxiosResponse): Promise<StorefrontUserDto>;
    /**
     * Transfers all existing data for the anonymous storefront user to the selected regular storefront user account.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @param body (optional) Operation parameters.
     * @return Success
     */
    mergeAnonymous(storefrontId: number, tenantId?: number | null | undefined, body?: MergeAnonymousUserDataInput | null | undefined, cancelToken?: CancelToken | undefined): Promise<void>;
    protected processMergeAnonymous(response: AxiosResponse): Promise<void>;
    /**
     * Returns an API access token for the specified storefront user.
     * @param storefrontUserId Storefront user identifier.
     * @param storefrontId Storefront identifier.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getToken(storefrontUserId: string, storefrontId: number, tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<string>;
    protected processGetToken(response: AxiosResponse): Promise<string>;
}
export interface ITenantInfoApiClient {
    /**
     * Returns an information about the tenant applications.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getApplicationsInfo(tenantId?: number | null | undefined): Promise<TenantApplicationsInfoDto>;
    /**
     * Returns an information about the tenant.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getInfo(tenantId?: number | null | undefined): Promise<TenantInfoDto>;
    /**
     * Returns an information about the tenant measure units.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getMeasureUnitsInfo(tenantId?: number | null | undefined): Promise<TenantMeasureUnitsInfoDto>;
    /**
     * Returns a list of tenant users.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getUsersInfo(tenantId?: number | null | undefined): Promise<TenantUserInfoDto[]>;
}
export declare class TenantInfoApiClient extends ApiClientBase implements ITenantInfoApiClient {
    private instance;
    private baseUrl;
    protected jsonParseReviver: ((key: string, value: any) => any) | undefined;
    constructor(configuration: ApiClientConfiguration, baseUrl?: string, instance?: AxiosInstance);
    /**
     * Returns an information about the tenant applications.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getApplicationsInfo(tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<TenantApplicationsInfoDto>;
    protected processGetApplicationsInfo(response: AxiosResponse): Promise<TenantApplicationsInfoDto>;
    /**
     * Returns an information about the tenant.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getInfo(tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<TenantInfoDto>;
    protected processGetInfo(response: AxiosResponse): Promise<TenantInfoDto>;
    /**
     * Returns an information about the tenant measure units.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getMeasureUnitsInfo(tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<TenantMeasureUnitsInfoDto>;
    protected processGetMeasureUnitsInfo(response: AxiosResponse): Promise<TenantMeasureUnitsInfoDto>;
    /**
     * Returns a list of tenant users.
     * @param tenantId (optional) Tenant identifier.
     * @return Success
     */
    getUsersInfo(tenantId?: number | null | undefined, cancelToken?: CancelToken | undefined): Promise<TenantUserInfoDto[]>;
    protected processGetUsersInfo(response: AxiosResponse): Promise<TenantUserInfoDto[]>;
}
/** Information about a service. */
export interface BuildInfoModel {
    /** Version number. */
    version?: string | null;
    /** Build date (UTC). */
    buildDate?: string | null;
    /** Build configuration (Debug | Release). */
    configuration?: string | null;
    /** Service name. */
    appName?: string | null;
}
/** Dto class, containing information about processing pipeline details. */
export interface ProcessingPipelineDto {
    /** Processing pipeline identifier. */
    id?: number;
    /** Processing pipeline name. */
    name?: string | null;
    /** Processing pipeline raw (uncompiled) content. */
    rawContent?: string | null;
}
/** Paged list of items. */
export interface PagedOfProcessingPipelineDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProcessingPipelineDto[] | null;
}
export interface ProblemDetails {
    type?: string | null;
    title?: string | null;
    status?: number | null;
    detail?: string | null;
    instance?: string | null;
}
/** DTO class, containing information about a product resource of type image. */
export interface ImageInfo {
    /** Product resource identifier. */
    resourceId?: string | null;
    /** Product Resource URL. */
    url?: string | null;
}
/** Product bundle resource type. */
export declare enum ProductBundleResourceType {
    Custom = "Custom",
    Preview = "Preview"
}
/** DTO class, containing information about a product bundle resource. */
export interface ProductBundleResourceDto {
    /** Product bundle resource identifier. */
    id?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Resource identifier. */
    resourceId?: string | null;
    /** Resource name. */
    name?: string | null;
    /** Resource namespace. */
    namespace?: string | null;
    /** Resource type. */
    type?: ProductBundleResourceType;
    /** Resource URL. */
    url?: string | null;
}
/** DTO class, containing information about a product bundle item. */
export interface ProductBundleItemDto {
    /** Product bundle item identifier. */
    id?: number;
    /** Product bundle item name. */
    name?: string | null;
    /** Product bundle item description. */
    description?: string | null;
    /** Bundled product identifier. */
    productId?: number | null;
    /** Bundled product version identifier. */
    productVersionId?: number | null;
    /** Bundled product name. */
    productName?: string | null;
    /** Bundled product variant identifier. */
    productVariantId?: number | null;
    /** Bundled product variant UID. */
    productVariantUID?: string | null;
    /** Bundled product variant Name. */
    productVariantName?: string | null;
    /** Bundled product variant SKU. */
    productVariantSku?: string | null;
    /** Product bundle item image info. */
    image?: ImageInfo | null;
    /** Product bundle item resources. */
    resources?: ProductBundleResourceDto[] | null;
}
/** DTO class, containing information about a product bundle. */
export interface ProductBundleDto {
    /** Product bundle identifier. */
    id?: number;
    /** Product bundle version identifier. */
    productBundleVersionId?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Product bundle name. */
    name?: string | null;
    /** Product bundle description. */
    description?: string | null;
    /** Product bundle creation time. */
    created?: string;
    /** Product bundle las modification time. */
    lastModified?: string | null;
    /** Personalization workflow identifier. */
    personalizationWorkflowId?: number | null;
    /** Product bundle custom fields. */
    customFields?: {
        [key: string]: string;
    } | null;
    /** Product bundle image info. */
    image?: ImageInfo | null;
    /** Product bundle items. */
    items?: ProductBundleItemDto[] | null;
    /** Product bundle resources. */
    resources?: ProductBundleResourceDto[] | null;
}
/** Paged list of items. */
export interface PagedOfProductBundleDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductBundleDto[] | null;
}
/** Conflict types. */
export declare enum ConflictType {
    NameConflict = "NameConflict",
    FolderOverwriteConflict = "FolderOverwriteConflict",
    IdConflict = "IdConflict",
    GeneralConflict = "GeneralConflict"
}
/** Information about operation conflict. */
export interface GeneralConflictDto {
    /** Problem description. */
    description?: string | null;
    /** Coflict type. */
    type?: ConflictType;
}
/** Customer's Canvas product type. */
export declare enum ProductType {
    ProductSpecification = "ProductSpecification",
    Product = "Product",
    ProductLink = "ProductLink",
    ProductBundle = "ProductBundle"
}
/** Type of editor that should be configured by workflow. */
export declare enum WorkflowType {
    UIFramework = "UIFramework",
    SimpleEditor = "SimpleEditor",
    DesignEditor = "DesignEditor",
    WorkflowElements = "WorkflowElements"
}
/** DTO class, containing information needed to start personalization process. */
export interface PersonalizationParametersDto {
    /** Customer's Canvas product type. */
    productType?: ProductType;
    /** Customer's Canvas product identifier.
May keep reference to `Product`, `Product Specification`, `Product Link` or `Product Bundle` (depending on `Type` value). */
    id?: number | null;
    /** Customer's Canvas product version identifier.
May keep reference to version of `Product`, `Product Link` or `Product Bundle` (depending on `Type` value). */
    versionId?: number | null;
    /** API Gateway URL address. */
    apiGatewayUrl?: string | null;
    /** Design Editor application URL address. */
    designEditorUrl?: string | null;
    /** Preflight application URL address. */
    preflightUrl?: string | null;
    /** Dynamic Image application URL address. */
    dynamicImageUrl?: string | null;
    /** Link to UI-Framework bundle. */
    uiFrameworkUrl?: string | null;
    /** Link to Simple Editor bundle. */
    simpleEditorUrl?: string | null;
    /** Link to Workflow Elements bundle. */
    workflowElementsUrl?: string | null;
    /** Personalization workflow type. */
    workflowType?: WorkflowType;
    /** Serialized content of compiled personalization workflow. */
    workflowContent?: string | null;
}
/** Available appearance types. */
export declare enum AppearanceDataType {
    Radio = "Radio",
    Dropdown = "Dropdown",
    Chips = "Chips",
    ColorGrid = "ColorGrid",
    ColorList = "ColorList",
    ImageGrid = "ImageGrid",
    ImageList = "ImageList"
}
/** DTO class, containing information about a product option appearance item. */
export interface AppearanceDataItemDto {
    /** Appearance item key. */
    key?: string | null;
    /** Appearance item value. */
    value?: string | null;
}
/** DTO class, containing information about a product option appearance. */
export interface AppearanceDataDto {
    /** Appearance type. */
    type?: AppearanceDataType;
    /** Appearance items. */
    items?: AppearanceDataItemDto[] | null;
}
/** Option values for product summary model. */
export interface ProductSummaryOptionValueDto {
    /** Option value identifier. */
    id?: number;
    /** Option value identifying tag. */
    tag?: string | null;
    /** Product option value UID. */
    uid?: string | null;
    /** Option value title. */
    title?: string | null;
    /** Option value value. */
    value?: string | null;
    /** Indicates if option value is used as a default value. */
    isDefault?: boolean;
    /** Option value description. */
    description?: string | null;
    /** Option value colors. */
    colors?: string[] | null;
    /** Option value image. */
    image?: ImageInfo | null;
}
/** Options for product summary model. */
export interface ProductSummaryOptionDto {
    /** Option identifier. */
    id?: number;
    /** Option identifying tag. */
    tag?: string | null;
    /** Product option UID. */
    uid?: string | null;
    /** Option title. */
    title?: string | null;
    /** Option description. */
    description?: string | null;
    /** Option tooltip. */
    tooltip?: string | null;
    /** Option sort index. */
    sortIndex?: number;
    /** Option traits. */
    traits?: string[] | null;
    /** Indicates if option is used to bind designs to product. */
    useForDesignBinding?: boolean;
    /** Indicates if option is used to bind mockups to product. */
    useForMockupBinding?: boolean;
    /** Indicates if option is used to bind documents to product. */
    useForDocumentBinding?: boolean;
    /** Option appearance. */
    appearanceData?: AppearanceDataDto | null;
    /** Option image info. */
    image?: ImageInfo | null;
    /** Option values. */
    productOptionValues?: ProductSummaryOptionValueDto[] | null;
}
/** General information about product that editors need to begin personalization process. */
export interface ProductSummaryDto {
    /** Product identifier. */
    productId?: number;
    /** Product version identifier. If product variant is not specified, active version identifier should be used. */
    productVersionId?: number;
    /** Product link identifier. If product link is not specified, should be null. */
    productLinkId?: number | null;
    /** Product link version identifier. If product link is not specified, should be null. */
    productLinkVersionId?: number | null;
    /** Product filter identifier for product link. If product link is not specified, should be null. */
    productFilterId?: number | null;
    /** Product bundle identifier. If product bundle is not specified, should be null. */
    productBundleId?: number | null;
    /** Product bundle version identifier. If product bundle is not specified, should be null. */
    productBundleVersionId?: number | null;
    /** Product variant identifier. If product variant is not specified, should be null. */
    productVariantId?: number | null;
    /** Product variant SKU. If product variant is not specified, should be null. */
    productVariantSku?: string | null;
    /** Product variant price. If product variant is not specified, should be null. */
    productVariantPrice?: number | null;
    /** Product variant weight. If product variant is not specified, should be null. */
    productVariantWeight?: number | null;
    /** Product variant availability. If product variant is not specified, should be null. */
    isProductVariantAvailable?: boolean | null;
    /** Product name. If product link is specified, name of link will be used. */
    name?: string | null;
    /** Product description. If product link is specified, description of link will be used. */
    description?: string | null;
    /** Product image info. */
    image?: ImageInfo | null;
    /** Tenant identifier. */
    tenantId?: number;
    /** Personalization workflow identifier. */
    personalizationWorkflowId?: number | null;
    /** Processing pipeline identifier. */
    processingPipelineId?: number | null;
    /** Product tags. */
    tags?: string[] | null;
    /** Product custom fields. */
    customFields?: {
        [key: string]: string;
    } | null;
    /** Product options summary.
If product link or variant is specified, product options will be filtered by link or variant options. */
    options?: ProductSummaryOptionDto[] | null;
}
/** Personalization workflow description DTO. */
export interface PersonalizationWorkflowDto {
    /** Workflow identifier. */
    id?: number;
    /** Processed workflow JSON. */
    content?: string | null;
    /** Workflow type. */
    workflowType?: WorkflowType;
}
/** Product link resource type. */
export declare enum ProductLinkResourceType {
    Preview = "Preview",
    Custom = "Custom"
}
/** DTO class, containing information about a product link resource. */
export interface ProductLinkResourceDto {
    /** Product link resource identifier. */
    id?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Resource identifier. */
    resourceId?: string | null;
    /** Resource name. */
    name?: string | null;
    /** Resource namespace. */
    namespace?: string | null;
    /** Resource type. */
    type?: ProductLinkResourceType;
    /** Resource URL. */
    url?: string | null;
}
/** Available option types. */
export declare enum OptionType {
    Simple = "Simple",
    Size = "Size",
    PageCount = "PageCount"
}
/** DTO class, containing information about a product filter option. */
export interface ProductFilterOptionDto {
    /** Product option identifier. */
    productOptionId?: number | null;
    /** Product option value identifier. */
    productOptionValueId?: number | null;
    /** Product option type ('Simple' / 'Size' / 'PageCount'). */
    productOptionType?: OptionType;
    /** Product option traits. */
    productOptionTraits?: string[] | null;
    /** Product option title. */
    productOptionTitle?: string | null;
    /** Product option value title. */
    productOptionValueTitle?: string | null;
    /** Indicates if option value should be used as a default value for corresponding option. */
    isDefault?: boolean;
}
/** DTO class, containing information about a product link. */
export interface ProductLinkDto {
    /** Product link identifier. */
    id?: number;
    /** Product link version identifier. */
    productLinkVersionId?: number;
    /** Linked product identifier. */
    productId?: number;
    /** Linked product version identifier. */
    productVersionId?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Product link name. */
    name?: string | null;
    /** Product link description. */
    description?: string | null;
    /** Product filter identifier. */
    productFilterId?: number;
    /** Product link image info. */
    image?: ImageInfo | null;
    /** Product link resources. */
    resources?: ProductLinkResourceDto[] | null;
    /** Product link creation time. */
    created?: string;
    /** Product link modification time. */
    lastModified?: string | null;
    /** Product filter options. */
    productFilterOptions?: ProductFilterOptionDto[] | null;
    /** Personalization workflow identifier. */
    personalizationWorkflowId?: number | null;
    /** Processing pipeline identifier. */
    processingPipelineId?: number | null;
    /** Default storefront identifier. */
    storefrontId?: number | null;
    /** Default storefront product identifier. */
    storefrontProductId?: string | null;
    /** Default storefront product name. */
    storefrontProductName?: string | null;
}
/** Paged list of items. */
export interface PagedOfProductLinkDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductLinkDto[] | null;
}
/** Available product reference target types. */
export declare enum ProductReferenceType {
    ProductSpecification = "ProductSpecification",
    Product = "Product",
    ProductLink = "ProductLink",
    ProductBundle = "ProductBundle"
}
/** DTO class, containing information about storefront product reference. */
export interface ProductReferenceDto {
    /** Product reference is an external reference to Customer's Canvas product, e.g online store product identifier. */
    productReference?: string | null;
    /** Product reference target type. */
    productReferenceType?: ProductReferenceType;
    /** Product reference name, e.g. online store product name. */
    productReferenceName?: string | null;
    /** Customer's Canvas product specification identifier. */
    productSpecificationId?: number;
    /** Customer's Canvas product identifier. */
    productId?: number;
    /** Customer's Canvas product version identifier. */
    productVersionId?: number;
    /** Customer's Canvas product link identifier. */
    productLinkId?: number;
    /** Customer's Canvas product bundle identifier. */
    productBundleId?: number;
    /** Storefront identifier. */
    storefrontId?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Storefront product reference creation date and time. */
    created?: string;
}
/** Paged list of items. */
export interface PagedOfProductReferenceDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductReferenceDto[] | null;
}
/** Dto class, containing information about product attribute. */
export interface ProductAttributeDto {
    /** Product attribute name. */
    name?: string | null;
    /** Product attribute type. */
    type?: string | null;
    /** Product attribute value. */
    value?: any | null;
}
/** Dto class, containing information about product specification. */
export interface ProductSpecificationDto {
    /** Product specification identifier. */
    id?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Product specification name. */
    name?: string | null;
    /** Product specification description. */
    description?: string | null;
    /** List of product attributes. */
    productAttributes?: ProductAttributeDto[] | null;
    /** Product specification creation time. */
    created?: string;
    /** Product specification modification time. */
    lastModified?: string | null;
    /** Personalization workflow identifier. */
    personalizationWorkflowId?: number;
    /** Processing pipeline identifier. */
    processingPipelineId?: number;
}
/** Paged list of items. */
export interface PagedOfProductSpecificationDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductSpecificationDto[] | null;
}
/** DTO class, containing information about a product. */
export interface ProductDto {
    /** Product identifier. */
    id?: number;
    /** Product version identifier. */
    productVersionId?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Product name. */
    name?: string | null;
    /** Product description. */
    description?: string | null;
    /** Product image info. */
    image?: ImageInfo | null;
    /** Product creation time. */
    created?: string;
    /** Product modification time. */
    lastModified?: string | null;
    /** Product tags. */
    tags?: string[] | null;
    /** Product custom fields. */
    customFields?: {
        [key: string]: string;
    } | null;
    /** Personalization workflow identifier. */
    personalizationWorkflowId?: number;
    /** Processing pipeline identifier. */
    processingPipelineId?: number;
    /** Default storefront identifier. */
    storefrontId?: number | null;
    /** Default storefront product identifier. */
    storefrontProductId?: string | null;
    /** Default storefront product name. */
    storefrontProductName?: string | null;
}
/** Paged list of items. */
export interface PagedOfProductDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductDto[] | null;
}
/** Dto class, containing information about storefront product cost details. */
export interface ProductCostDetailsDto {
    /** Product reference is an external reference to Customer's Canvas product specification, e.g online store product identifier. */
    productReference?: string | null;
    /** Product SKU. */
    productSku?: string | null;
    /** Product quantity. */
    productQuantity?: number;
    /** Product price. */
    productPrice?: number;
    /** Product cost. */
    productCost?: number;
    /** Product discount. */
    productDiscount?: number;
    /** Currency code. */
    currencyCode?: string | null;
    /** Tenant identifier. */
    tenantId?: number;
}
/** Option value description for 'Simple' option type. */
export interface SimpleOptionValue {
    /** String Value. */
    value?: string | null;
}
/** DTO class, containing information about a product option value. */
export interface ProductOptionValueDto {
    /** Product option value identifier. */
    id?: number;
    /** Product option value title. */
    title?: string | null;
    /** Product option value sort index. */
    sortIndex?: number;
    /** Indicates if product option value is used as a default value. */
    isDefault?: boolean;
    /** Product option value identifying tag. */
    tag?: string | null;
    /** Product option value UID. */
    uid?: string | null;
    /** Product option value description for 'Simple' option type. */
    simpleOptionValue?: SimpleOptionValue | null;
    /** Product option value description. */
    description?: string | null;
    /** Product option value colors. */
    colors?: string[] | null;
    /** Product option value image. */
    image?: ImageInfo | null;
}
/** DTO class, containing information about a product option. */
export interface ProductOptionDto {
    /** Product option identifier. */
    id?: number;
    /** Product version identifier */
    productVersionId?: number;
    /** Product identifier. */
    productId?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Option type ('Simple' / 'Size' / 'PageCount'). */
    type?: OptionType;
    /** Option traits. */
    traits?: string[] | null;
    /** Product option title. */
    title?: string | null;
    /** Product option sort index. */
    sortIndex?: number;
    /** Product option identifying tag. */
    tag?: string | null;
    /** Product option UID. */
    uid?: string | null;
    /** Specifies if the option is used for design binding. */
    useForDesignBinding?: boolean;
    /** Specifies if the option is used for mockup binding. */
    useForMockupBinding?: boolean;
    /** Specifies if the option is used for document binding. */
    useForDocumentBinding?: boolean;
    /** Product option description. */
    description?: string | null;
    /** Product option tooltip. */
    tooltip?: string | null;
    /** Product option appearance. */
    appearanceData?: AppearanceDataDto | null;
    /** Product option image info. */
    image?: ImageInfo | null;
    /** A list of product option values. */
    productOptionValues?: ProductOptionValueDto[] | null;
}
/** Paged list of items. */
export interface PagedOfProductOptionDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductOptionDto[] | null;
}
/** DTO class, containing information about a product variant option. */
export interface ProductVariantOptionDto {
    /** Product option identifier. */
    productOptionId?: number | null;
    /** Product option value identifier. */
    productOptionValueId?: number | null;
    /** Product option type ('Simple' / 'Size' / 'PageCount'). */
    productOptionType?: OptionType;
    /** Product option traits. */
    productOptionTraits?: string[] | null;
    /** Product option title. */
    productOptionTitle?: string | null;
    /** Product option value title. */
    productOptionValueTitle?: string | null;
    /** Product option value description for 'Simple' option type. */
    simpleOptionValue?: SimpleOptionValue | null;
}
/** DTO class, containing information about a product variant. */
export interface ProductVariantDto {
    /** Product variant identifier. */
    id?: number;
    /** Product variant unique identifier. */
    uid?: string | null;
    /** Product version identifier. */
    productVersionId?: number;
    /** Product identifier. */
    productId?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Product variant available. */
    isAvailable?: boolean;
    /** Product variant price. */
    price?: number | null;
    /** Product variant weight. */
    weight?: number | null;
    /** Product variant sort index. */
    sortIndex?: number;
    /** Product variant identifier (usually SKU) in storefront / online store. */
    storefrontProductVariantId?: string | null;
    /** Product variant SKU. */
    sku?: string | null;
    /** A list of product variant options. */
    productVariantOptions?: ProductVariantOptionDto[] | null;
}
/** Paged list of items. */
export interface PagedOfProductVariantDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductVariantDto[] | null;
}
/** Available product variant resource types. */
export declare enum ProductVariantResourceType {
    Preview = "Preview",
    EditorModel = "EditorModel",
    Custom = "Custom"
}
/** Product variant resource description for 'Preview' resource type. */
export interface ProductVariantResourcePreview {
    /** Preview with in pixels. */
    width?: number | null;
    /** Preview heigth in pixels. */
    height?: number | null;
    /** Mockup which is used to create preview. */
    mockupId?: string | null;
    /** Design surface index which is used to create preivew. */
    surfaceIndex?: number | null;
}
/** DTO class, containing information about a product variant resource. */
export interface ProductVariantResourceDto {
    /** Resource identifier. */
    resourceId?: string | null;
    /** Resource name. */
    name?: string | null;
    /** Resource url. */
    url?: string | null;
    /** Resource type. */
    type?: ProductVariantResourceType;
    /** Product variant resource description for 'Preview' resource type. */
    resourcePreview?: ProductVariantResourcePreview | null;
}
/** DTO class, containing information about a product variant design. */
export interface ProductVariantDesignDto {
    /** Product variant identifier. */
    productVariantId?: number;
    /** Product variant unique identifier. */
    productVariantUID?: string | null;
    /** Product version identifier. */
    productVersionId?: number;
    /** Product identifier. */
    productId?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Product variant available. */
    isAvailable?: boolean;
    /** Product variant price. */
    price?: number | null;
    /** Product variant sort index. */
    sortIndex?: number;
    /** Product variant identifier (usually SKU) in storefront / online store. */
    storefrontProductVariantId?: string | null;
    /** Product variant SKU. */
    sku?: string | null;
    /** Design identifier. */
    designId?: string | null;
    /** Design name. */
    designName?: string | null;
    /** Design grouping tag. */
    designGroup?: string | null;
    /** Design data schema tag. Indicates if design has data schema. */
    designHasDataSchema?: boolean;
    /** Design toggle set tag. Indicated if design has toggle set. */
    designHasToggleSet?: boolean;
    /** A list of product variant options. */
    productVariantOptions?: ProductVariantOptionDto[] | null;
    /** A list of product variant resources. */
    productVariantResources?: ProductVariantResourceDto[] | null;
}
/** Paged list of items. */
export interface PagedOfProductVariantDesignDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductVariantDesignDto[] | null;
}
/** Available mockup types. */
export declare enum ProductVariantMockupType {
    Thumbnail = "Thumbnail",
    Editor = "Editor",
    Preview = "Preview"
}
/** Available surface usage types. */
export declare enum SurfaceUsageType {
    Individual = "Individual",
    Custom = "Custom",
    All = "All"
}
/** Dto class, containing information about a product variant mockup. */
export interface ProductVariantMockupDto {
    /** Product variant identifier. */
    productVariantId?: number;
    /** Product variant unique identifier. */
    productVariantUID?: string | null;
    /** Product version identifier. */
    productVersionId?: number;
    /** Product identifier. */
    productId?: number;
    /** Tenant identifier. */
    tenantId?: number | null;
    /** Product variant identifier in online store (usually SKU). */
    storefrontProductVariantId?: string | null;
    /** Product variant SKU. */
    sku?: string | null;
    /** Mockup identifier. */
    mockupId?: string | null;
    /** Mockup name. */
    mockupName?: string | null;
    /** Mockup validation type. */
    mockupValidationType?: string | null;
    /** Mockup type. */
    mockupType?: ProductVariantMockupType;
    /** Surface index indicates a surface of a design to which mockup should be applied. */
    surfaceIndex?: number | null;
    /** Surface usage type defines a scheme for applying mockup to design surfaces. */
    surfaceUsageType?: SurfaceUsageType;
    /** A list of product variant options. */
    productVariantOptions?: ProductVariantOptionDto[] | null;
}
/** Paged list of items. */
export interface PagedOfProductVariantMockupDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductVariantMockupDto[] | null;
}
/** DTO class, containing information about a product variant document. */
export interface ProductVariantDocumentDto {
    /** Product variant identifier. */
    productVariantId?: number;
    /** Product variant unique identifier. */
    productVariantUID?: string | null;
    /** Product version identifier. */
    productVersionId?: number;
    /** Product identifier. */
    productId?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Product variant available. */
    isAvailable?: boolean;
    /** Product variant price. */
    price?: number | null;
    /** Product variant sort index. */
    sortIndex?: number;
    /** Product variant identifier (usually SKU) in storefront / online store. */
    storefrontProductVariantId?: string | null;
    /** Product variant SKU. */
    sku?: string | null;
    /** Document identifier. */
    documentId?: string | null;
    /** Document name. */
    documentName?: string | null;
    /** Document grouping tag. */
    documentGroup?: string | null;
    /** A list of product variant options. */
    productVariantOptions?: ProductVariantOptionDto[] | null;
    /** A list of product variant resources. */
    productVariantResources?: ProductVariantResourceDto[] | null;
}
/** Paged list of items. */
export interface PagedOfProductVariantDocumentDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProductVariantDocumentDto[] | null;
}
/** Defines all available date period filter values for queries. */
export declare enum DatePeriod {
    All = "All",
    Today = "Today",
    Last7Days = "Last7Days",
    Last30Days = "Last30Days"
}
/** Available project processing statuses. */
export declare enum ProjectProcessingStatus {
    Pending = "Pending",
    InProgress = "InProgress",
    Completed = "Completed",
    Failed = "Failed"
}
/** Available product resource types */
export declare enum ProjectItemResourceType {
    General = "General",
    Preview = "Preview",
    Hires = "Hires"
}
/** Dto class, containing information about a project item resource. */
export interface ProjectItemResourceDto {
    /** Resource ID. */
    resourceId?: string | null;
    /** Resource name. */
    name?: string | null;
    /** Resource type. */
    type?: ProjectItemResourceType;
}
/** Dto class, containing information about a project item. */
export interface ProjectItemDto {
    /** Item identifier. */
    id?: number;
    /** Item name. */
    name?: string | null;
    /** Project item group identifier. */
    groupId?: string | null;
    /** Item quantity information. */
    quantity?: number | null;
    /** Order item identifier from storefront order. */
    orderLineItemId?: string | null;
    /** Order item index from storefront order. */
    orderLineItemIndex?: number | null;
    /** Storefront product reference (i.e external reference to Customer's Canvas product specification). */
    productReference?: string | null;
    /** Item information. */
    fields?: {
        [key: string]: any;
    } | null;
    /** Additional item information. */
    hidden?: any | null;
    /** A list of design identifiers associated to the item. */
    designIds?: string[] | null;
    /** SKU. */
    sku?: string | null;
    /** External resources descriptions. */
    resources?: ProjectItemResourceDto[] | null;
}
/** Dto class, containing information about a project. */
export interface ProjectDto {
    /** Project identifier. */
    id?: number;
    /** Storefront product identifier. */
    productReference?: string | null;
    /** Storefront identifier. */
    storefrontId?: number;
    /** Project tenant indentifier. */
    tenantId?: number;
    /** Order identifier in ecommerce system. */
    orderId?: string | null;
    /** Order url in ecommerce system. */
    orderUrl?: string | null;
    /** Order number in ecommerce system. */
    orderNumber?: number | null;
    /** Order name in ecommerce system. */
    orderName?: string | null;
    /** Order item identifier from storefront order. */
    orderLineItemId?: string | null;
    /** Order item index from storefront order. */
    orderLineItemIndex?: number | null;
    /** Customer identifier in ecommerce system. */
    customerId?: string | null;
    /** Customer name in ecommerce system. */
    customerName?: string | null;
    /** Project name. */
    name?: string | null;
    /** Project owner identifier. */
    ownerId?: string | null;
    /** List of project items. */
    items?: ProjectItemDto[] | null;
    /** Project status code. */
    status?: number;
    /** Project creation time. */
    created?: string;
    /** Project modification time. */
    lastModified?: string | null;
    /** Description of the project. */
    description?: string | null;
    /** Project processing status. */
    processingStatus?: ProjectProcessingStatus;
}
/** Paged list of items. */
export interface PagedOfProjectDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProjectDto[] | null;
}
/** Dto class, containing create operation parameters for a project item resource. */
export interface ProjectItemResourceParametersDto {
    /** Resource URL. */
    url?: string | null;
    /** Resource name. */
    name?: string | null;
    /** Resource type. */
    type?: ProjectItemResourceType;
    /** Original resource identifier. */
    resourceId?: string | null;
}
export declare enum ProjectItemProductType {
    ProductSpecification = "ProductSpecification",
    Product = "Product",
    ProductLink = "ProductLink"
}
/** Additional project item product information description. */
export interface ProjectItemProductSpecifierDto {
    /** Customer's Canvas product type. */
    type?: ProjectItemProductType;
    /** Customer's Canvas product identifier.
May keep reference to `Product`, `Product Specification` and `Product Link` (depending on `Type` value). */
    id?: number | null;
    /** Customer's Canvas product version identifier.
May keep reference to version of `Product`, or `Product Link` (depending on `Type` value). */
    versionId?: number | null;
    /** Customer's Canvas product variant identifier.
May keep reference to version of `Product` (depending on `Type` value). */
    variantId?: number | null;
}
/** Dto class, containing create operation parameters for a project item. */
export interface ProjectItemParametersDto {
    /** Item name. */
    name?: string | null;
    /** Project item group identifier. */
    groupId?: string | null;
    /** Item quantity information. */
    quantity?: number | null;
    /** Line item index from ecommerce system order. */
    orderLineItemIndex?: number | null;
    /** Line Item identifier from ecommerce system order. */
    orderLineItemId?: string | null;
    /** Storefront product identifier. */
    productReference?: string | null;
    /** Item information. */
    fields?: {
        [key: string]: any;
    } | null;
    /** Additional item information. */
    hidden?: any | null;
    /** A list of design identifiers associated to the item. */
    designIds?: string[] | null;
    /** SKU. */
    sku?: string | null;
    /** External resources descriptions. */
    resources?: ProjectItemResourceParametersDto[] | null;
    /** Additional project item product information description. */
    productSpecifier?: ProjectItemProductSpecifierDto | null;
}
/** Dto class, containing create operation parameters for single-item project entity. */
export interface CreateSingleItemProjectDto {
    /** Product reference (i.e external reference to Customer's Canvas product specification - main subject of this project). */
    productReference?: string | null;
    /** Line item index from ecommerce system order. */
    orderLineItemIndex?: number | null;
    /** Line Item identifier from ecommerce system order. */
    orderLineItemId?: string | null;
    /** List of project items. */
    items?: ProjectItemParametersDto[] | null;
    /** Order identifier in ecommerce system. */
    orderId?: string | null;
    /** Order url in ecommerce system. */
    orderUrl?: string | null;
    /** Order number in ecommerce system. */
    orderNumber?: number | null;
    /** Order name in ecommerce system. */
    orderName?: string | null;
    /** Customer identifier in ecommerce system. */
    customerId?: string | null;
    /** Customer name in ecommerce system. */
    customerName?: string | null;
    /** Project name. */
    name?: string | null;
    /** Project owner identifier. */
    ownerId: string;
    /** List of project items. */
    item?: ProjectItemParametersDto | null;
    /** Description of the project. */
    description?: string | null;
}
/** Dto class, containing create operation parameters for multi-item project entity. */
export interface CreateMultiItemProjectDto {
    /** Order identifier in ecommerce system. */
    orderId?: string | null;
    /** Order url in ecommerce system. */
    orderUrl?: string | null;
    /** Order number in ecommerce system. */
    orderNumber?: number | null;
    /** Order name in ecommerce system. */
    orderName?: string | null;
    /** Customer identifier in ecommerce system. */
    customerId?: string | null;
    /** Customer name in ecommerce system. */
    customerName?: string | null;
    /** Project name. */
    name?: string | null;
    /** Project owner identifier. */
    ownerId: string;
    /** List of project items. */
    items?: ProjectItemParametersDto[] | null;
    /** Description of the project. */
    description?: string | null;
}
/** Dto class, containing ecommerce order description. */
export interface OrderDetailsDto {
    /** Order identifier in ecommerce system. */
    orderId?: string | null;
    /** Order url in ecommerce system. */
    orderUrl?: string | null;
    /** Order number in ecommerce system. */
    orderNumber?: number | null;
    /** Order name in ecommerce system. */
    orderName?: string | null;
    /** Line item index from ecommerce system order. */
    orderLineItemIndex?: number | null;
    /** Line Item identifier from ecommerce system order. */
    orderLineItemId?: string | null;
    /** Customer identifier in ecommerce system. */
    customerId?: string | null;
    /** Customer name in ecommerce system. */
    customerName?: string | null;
}
export declare enum RenderHiResScenarioOutputFormat {
    Pdf = "Pdf",
    Jpeg = "Jpeg",
    Png = "Png",
    Tiff = "Tiff",
    Bmp = "Bmp"
}
export declare enum RenderHiResScenarioOutputColorSpace {
    Rgb = "Rgb",
    Grayscale = "Grayscale",
    Cmyk = "Cmyk"
}
export declare enum RenderHiResScenarioOutputFlipMode {
    None = "None",
    Horizontal = "Horizontal",
    Vertical = "Vertical",
    Both = "Both"
}
export declare enum RenderHiResScenarioOutputRotateMode {
    None = "None",
    Rotate90 = "Rotate90",
    Rotate180 = "Rotate180",
    Rotate270 = "Rotate270",
    Auto = "Auto"
}
/** Dto class, containing 'RenderHiRes' scenario parameters. */
export interface RenderHiResScenarioDto {
    /** Private design identifier. */
    designId: string;
    /** Output file name (without extension). */
    name?: string | null;
    /** Output file DPI. */
    dpi?: number;
    /** Output file format. */
    format?: RenderHiResScenarioOutputFormat | null;
    /** Output file color space. */
    colorSpace?: RenderHiResScenarioOutputColorSpace | null;
    /** Output file flip mode. */
    flipMode?: RenderHiResScenarioOutputFlipMode | null;
    /** Output file rotate mode. */
    rotateMode?: RenderHiResScenarioOutputRotateMode | null;
    /** Output file access mode. */
    anonymousAccess?: boolean | null;
}
/** Dto class, containing 'create' operation parameters for project entity. */
export interface CreateProjectByRenderHiResScenarioDto {
    /** Project owner identifier. */
    ownerId: string;
    /** Project name. */
    name?: string | null;
    /** Description of the project. */
    description?: string | null;
    /** Ecommerce system order description. */
    orderDetails?: OrderDetailsDto | null;
    /** Line item index from ecommerce system order. */
    orderLineItemIndex?: number | null;
    /** Line Item identifier from ecommerce system order. */
    orderLineItemId?: string | null;
    /** List of project items. */
    scenario: RenderHiResScenarioDto;
}
export interface ItemPipelineDto {
    itemName?: string | null;
    pipelineId?: number;
}
/** Dto class, containing 'Specific Pipeline' scenario parameters. */
export interface SpecificPipelineScenarioDto {
    /** An existing processing pipeline identifier. */
    pipelineId?: number | null;
    /** An existing processing pipeline identifier for project post-processing. */
    postProcessingPipelineId?: number | null;
    /** List of objects describing connections between project items and processing pipelines. */
    itemPipelines?: ItemPipelineDto[] | null;
}
/** Dto class, containing 'create' operation parameters for a new project that should be created by executing 'Specific Pipeline' scenario. */
export interface CreateProjectBySpecificPipelineScenarioDto {
    /** Project owner identifier. */
    ownerId: string;
    /** Project name. */
    name?: string | null;
    /** Description of the project. */
    description?: string | null;
    /** Ecommerce system order description. */
    orderDetails?: OrderDetailsDto | null;
    /** List of project items. */
    items?: ProjectItemParametersDto[] | null;
    /** 'Specific Pipeline' scenario params. For more information check BackOffice.Web.PublicApi.ApiStorefront.Models.SpecificPipelineScenarioDto. */
    scenario: SpecificPipelineScenarioDto;
}
/** Project status transition dto class. */
export interface ProjectStatusTransitionDto {
    /** Transition identifier. */
    id?: number;
    /** Transition identifying name. */
    name?: string | null;
    /** Transition display name. */
    displayName?: string | null;
    /** Project status code from which transition to the result status code can be done. */
    startStatus?: number;
    /** Transition result project status code. */
    resultStatus?: number;
}
/** Paged list of items. */
export interface PagedOfProjectStatusTransitionDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProjectStatusTransitionDto[] | null;
}
/** Project status parameters. */
export interface ProjectStatusDto {
    /** Project status identifier. */
    id?: number;
    /** Status code. */
    code?: number;
    /** Status mark color. */
    color?: string | null;
    /** Status display name. */
    displayName?: string | null;
}
/** Dto class, containing information about the project status transition conflict. */
export interface ProjectStatusTransitionConflictDto {
    /** A list of all available status transitions for the project. */
    availableTransitions?: ProjectStatusTransitionDto[] | null;
    /** Problem description. */
    description?: string | null;
    /** Coflict type. */
    type?: ConflictType;
}
/** Dto class, containing parameters for the 'projects batch delete' operation. */
export interface BatchDeleteProjectsInput {
    /** Identifiers of projects that should be deleted. */
    ids?: number[] | null;
}
/** Paged list of items. */
export interface PagedOfProjectStatusDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: ProjectStatusDto[] | null;
}
/** Dto class, containing description of a project output file. */
export interface ProjectOutputFileDetailsDto {
    /** Project item identifier. */
    projectItemId?: number | null;
    /** Order item identifier from storefront. */
    orderLineItemId?: string | null;
    /** Order item index from storefront. */
    orderLineItemIndex?: number | null;
    /** Project output file URL. */
    url?: string | null;
    /** Project output file name. */
    name?: string | null;
    /** Project output file format. */
    format?: string | null;
    /** Output artifact file identifier. */
    artifactId?: string | null;
    /** Project output file access strategy. */
    anonymousAccess?: boolean;
    /** Project output file size in bytes. */
    size?: number | null;
}
/** Dto class, containing description of project processing results. */
export interface ProjectProcessingResultsDto {
    /** Project processing status. */
    status?: ProjectProcessingStatus;
    /** Project status description. */
    statusDescription?: string | null;
    /** Collection of project output file descriptions. */
    outputFileDetails?: ProjectOutputFileDetailsDto[] | null;
}
/** Available value types for order data item. */
export declare enum OrderDataItemValueType {
    PlainText = "PlainText",
    CommaSeparatedList = "CommaSeparatedList",
    SerializedJson = "SerializedJson"
}
/** Dto class, containing information about project's order data item. */
export interface OrderDataItemDto {
    /** Order data item key (eventuall order metadata field name). */
    key?: string | null;
    /** Order data item value. */
    value?: string | null;
    /** Order data item type. */
    type?: OrderDataItemValueType;
}
/** Storefront types. */
export declare enum StorefrontType {
    Custom = "Custom",
    ShopifyLegacy = "ShopifyLegacy",
    DocketManager = "DocketManager",
    CustomSaml = "CustomSaml",
    NopCommerce = "NopCommerce",
    WooCommerce = "WooCommerce",
    Magento = "Magento",
    BigCommerce = "BigCommerce",
    Shopify = "Shopify",
    ShopifyCustom = "ShopifyCustom"
}
/** Storefront status. */
export declare enum StorefrontStatus {
    Dev = "Dev",
    Prod = "Prod"
}
/** Dto class, containing information about a storefront. */
export interface StorefrontDto {
    /** Storefront identifier. */
    id?: number;
    /** Tenant identifier. */
    tenantId?: number;
    /** Storefront name. */
    name?: string | null;
    /** Storefront ecommerce system type. */
    type?: StorefrontType;
    /** Storefront entity creation date and time. */
    created?: string;
    /** Storefront status. */
    status?: StorefrontStatus;
}
/** Paged list of items. */
export interface PagedOfStorefrontDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: StorefrontDto[] | null;
}
/** DTO class, containing infromation about a storefront user. */
export interface StorefrontUserDto {
    /** Storefront user identifier. */
    userId?: string | null;
    /** Storefront tenant indentifier. */
    tenantId?: number;
    /** Storefront identifier. */
    storefrontId?: number | null;
    /** Indicates if the user is tracked as an anonymous. */
    isAnonymous?: boolean;
}
/** Paged list of items. */
export interface PagedOfStorefrontUserDto {
    /** Items count. */
    total?: number;
    /** Items list. */
    items?: StorefrontUserDto[] | null;
}
/** Dto class, containing create operation parameters for storefront user. */
export interface CreateStorefrontUserDto {
    /** Storefront user identifier. */
    storefrontUserId?: string | null;
    /** Indicates if the user is tracked as an anonymous. */
    isAnonymous?: boolean;
}
export interface RegisterStorefrontUserInput {
    /** Storefront user identifier. */
    storefrontUserId?: string | null;
}
/** Dto class, containing parameters for merge anonymous user operation. */
export interface MergeAnonymousUserDataInput {
    /** Anonymous storefront user identifier. */
    anonymousStorefrontUserId?: string | null;
    /** Regular storefront user identifier. */
    regularStorefrontUserId?: string | null;
}
/** Dto class, containing information about tenant applications. */
export interface TenantApplicationsInfoDto {
    /** An url to the 'Design Editor' tenant application. */
    designEditorUrl?: string | null;
    /** An url to the 'UI Framework'. */
    uiFrameworkUrl?: string | null;
    /** An url to the 'Simple editor'. */
    simpleEditorUrl?: string | null;
    /** An url to the 'Workflow Elements' web components library. */
    workflowElementsUrl?: string | null;
    /** An url to the 'Template editor'. */
    templateEditorUrl?: string | null;
    /** An url to the 'Preflight' tenant application. */
    preflightUrl?: string | null;
    /** An url to the 'Dynamic Image' tenant application. */
    dynamicImageUrl?: string | null;
    /** Tenant identifier */
    tenantId?: number;
    /** An ApiKey for the 'Design Editor' tenant application. */
    designEditorApiKey?: string | null;
    /** An ApiKey for the 'Preflight' tenant application. */
    preflightApiKey?: string | null;
    /** An ApiKey for the 'Dynamic Image' tenant application. */
    dynamicImageApiKey?: string | null;
}
/** Dto class, containing general information about tenant. */
export interface TenantInfoDto {
    /** Tenant identifier. */
    tenantId?: number;
    /** Tenancy name. */
    tenancyName?: string | null;
    /** Tenant creation time. */
    tenantCreationTime?: string;
    /** Tenant activeness status. */
    isActive?: boolean;
}
/** Dto class, containing information about size measure unit. */
export interface SizeMeasureUnitDto {
    /** Measure unit full name. */
    name?: string | null;
    /** Measure unit short name. */
    shortName?: string | null;
    /** Measure unit ratio. */
    ratio?: number;
    /** Indicates if measure unit should be used by default. */
    isDefault?: boolean;
}
/** Dto class, containing information about tenant measure units. */
export interface TenantMeasureUnitsInfoDto {
    /** A list of all 'size' measure units of the tenant. */
    sizeMeasureUntis?: SizeMeasureUnitDto[] | null;
}
export interface TenantUserInfoDto {
    /** Tenant identifier. */
    tenantId?: number;
    /** User identifier. */
    userId?: number;
    /** User name. */
    userName?: string | null;
    /** User surname. */
    userSurname?: string | null;
    /** User status. */
    isActive?: boolean;
}
export interface FileResponse {
    data: Blob;
    status: number;
    fileName?: string;
    headers?: {
        [name: string]: any;
    };
}
export declare class ApiException extends Error {
    message: string;
    status: number;
    response: string;
    headers: {
        [key: string]: any;
    };
    result: any;
    constructor(message: string, status: number, response: string, headers: {
        [key: string]: any;
    }, result: any);
    protected isApiException: boolean;
    static isApiException(obj: any): obj is ApiException;
}
