import { IGXE } from "@intelligentgraphics/igd.core";
import { Session, Article, ICatalogManager, IProductDataManager, Operator, IConfigurationService, ApplicationStateValue } from "../Types";
import { SessionParams } from "../Session";
export interface SingleArticleSession<AppStateValue extends ApplicationStateValue = ApplicationStateValue> extends Session<AppStateValue> {
    getMainArticleComId(): string | undefined;
    getMainArticle(): Article | undefined;
    getCatalogManager(): ICatalogManager | undefined;
    getProductDataManager(): IProductDataManager | undefined;
    getConfigurationService(): IConfigurationService | undefined;
    getOperator(): Operator | undefined;
    changeMainArticleProperty(propertyKey: string, value: IGXE.TPropertyValue): Promise<void>;
    changeMainArticleProperties(changes: Record<string, IGXE.TPropertyValue>): Promise<void>;
    deleteMainArticle(): Promise<void>;
}
export declare const createSingleArticleSession: <AppStateValue extends ApplicationStateValue = ApplicationStateValue>({ language, currency, locale, applicationState, }?: SessionParams<AppStateValue>) => SingleArticleSession<AppStateValue>;
