import { OrPromise } from '@sphereon/ssi-types';
import { DataSource } from 'typeorm';
import { AbstractIssuanceBrandingStore } from './AbstractIssuanceBrandingStore';
import { IAddCredentialBrandingArgs, IAddCredentialLocaleBrandingArgs, IAddIssuerBrandingArgs, IAddIssuerLocaleBrandingArgs, ICredentialBranding, ICredentialLocaleBranding, IGetCredentialBrandingArgs, IGetCredentialLocaleBrandingArgs, IGetIssuerBrandingArgs, IGetIssuerLocaleBrandingArgs, IIssuerBranding, IIssuerLocaleBranding, IRemoveCredentialBrandingArgs, IRemoveCredentialLocaleBrandingArgs, IRemoveIssuerBrandingArgs, IRemoveIssuerLocaleBrandingArgs, IUpdateCredentialBrandingArgs, IUpdateCredentialLocaleBrandingArgs, IUpdateIssuerBrandingArgs, IUpdateIssuerLocaleBrandingArgs } from '../types';
export declare class IssuanceBrandingStore extends AbstractIssuanceBrandingStore {
    private readonly dbConnection;
    constructor(dbConnection: OrPromise<DataSource>);
    addCredentialBranding: (args: IAddCredentialBrandingArgs) => Promise<ICredentialBranding>;
    getCredentialBranding: (args?: IGetCredentialBrandingArgs) => Promise<Array<ICredentialBranding>>;
    removeCredentialBranding: (args: IRemoveCredentialBrandingArgs) => Promise<void>;
    updateCredentialBranding: (args: IUpdateCredentialBrandingArgs) => Promise<ICredentialBranding>;
    addCredentialLocaleBranding: (args: IAddCredentialLocaleBrandingArgs) => Promise<ICredentialBranding>;
    getCredentialLocaleBranding: (args?: IGetCredentialLocaleBrandingArgs) => Promise<Array<ICredentialLocaleBranding>>;
    removeCredentialLocaleBranding: (args: IRemoveCredentialLocaleBrandingArgs) => Promise<void>;
    updateCredentialLocaleBranding: (args: IUpdateCredentialLocaleBrandingArgs) => Promise<ICredentialLocaleBranding>;
    addIssuerBranding: (args: IAddIssuerBrandingArgs) => Promise<IIssuerBranding>;
    getIssuerBranding: (args?: IGetIssuerBrandingArgs) => Promise<Array<IIssuerBranding>>;
    removeIssuerBranding: (args: IRemoveIssuerBrandingArgs) => Promise<void>;
    updateIssuerBranding: (args: IUpdateIssuerBrandingArgs) => Promise<IIssuerBranding>;
    addIssuerLocaleBranding: (args: IAddIssuerLocaleBrandingArgs) => Promise<IIssuerBranding>;
    getIssuerLocaleBranding: (args?: IGetIssuerLocaleBrandingArgs) => Promise<Array<IIssuerLocaleBranding>>;
    removeIssuerLocaleBranding: (args: IRemoveIssuerLocaleBrandingArgs) => Promise<void>;
    updateIssuerLocaleBranding: (args: IUpdateIssuerLocaleBrandingArgs) => Promise<IIssuerLocaleBranding>;
    private hasDuplicateLocales;
    private removeLocaleBranding;
}
//# sourceMappingURL=IssuanceBrandingStore.d.ts.map