import type { Principal } from '@icp-sdk/core/principal';
import { type SatelliteDid, type SatelliteParameters } from '@junobuild/ic-client/actor';
export declare const setStorageConfig: ({ config, satellite }: {
    config: SatelliteDid.SetStorageConfig;
    satellite: SatelliteParameters;
}) => Promise<SatelliteDid.StorageConfig>;
export declare const setDatastoreConfig: ({ config, satellite }: {
    config: SatelliteDid.SetDbConfig;
    satellite: SatelliteParameters;
}) => Promise<SatelliteDid.DbConfig>;
export declare const setAuthConfig: ({ config, satellite }: {
    config: SatelliteDid.SetAuthenticationConfig;
    satellite: SatelliteParameters;
}) => Promise<SatelliteDid.AuthenticationConfig>;
export declare const setAutomationConfig: ({ config, satellite }: {
    config: SatelliteDid.SetAutomationConfig;
    satellite: SatelliteParameters;
}) => Promise<SatelliteDid.AutomationConfig>;
export declare const getStorageConfig: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<SatelliteDid.StorageConfig>;
export declare const getDatastoreConfig: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<[] | [SatelliteDid.DbConfig]>;
export declare const getAuthConfig: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<[] | [SatelliteDid.AuthenticationConfig]>;
export declare const getAutomationConfig: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<[] | [SatelliteDid.AutomationConfig]>;
export declare const getConfig: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<SatelliteDid.Config>;
export declare const listRules: ({ satellite, type, filter }: {
    satellite: SatelliteParameters;
    type: SatelliteDid.CollectionType;
    filter: SatelliteDid.ListRulesParams;
}) => Promise<SatelliteDid.ListRulesResults>;
export declare const setRule: ({ type, collection, rule, satellite }: {
    type: SatelliteDid.CollectionType;
    collection: string;
    rule: SatelliteDid.SetRule;
    satellite: SatelliteParameters;
}) => Promise<SatelliteDid.Rule>;
/**
 * @deprecated - Replaced in Satellite > v0.0.22 with public custom section juno:package
 */
export declare const version: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<string>;
/**
 * @deprecated TODO: for backwards compatibility - to be removed
 */
export declare const listDeprecatedControllers: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<Principal[]>;
/**
 * @deprecated TODO: for backwards compatibility - to be removed
 */
export declare const listDeprecatedNoScopeControllers: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<[Principal, SatelliteDid.AccessKey][]>;
export declare const listControllers: ({ satellite, certified }: {
    satellite: SatelliteParameters;
    certified?: boolean;
}) => Promise<[Principal, SatelliteDid.AccessKey][]>;
export declare const listCustomDomains: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<[string, SatelliteDid.CustomDomain][]>;
export declare const setCustomDomain: ({ satellite, domainName, boundaryNodesId }: {
    satellite: SatelliteParameters;
    domainName: string;
    boundaryNodesId: string | undefined;
}) => Promise<void>;
export declare const memorySize: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<SatelliteDid.MemorySize>;
export declare const countDocs: ({ collection, satellite }: {
    collection: string;
    satellite: SatelliteParameters;
}) => Promise<bigint>;
export declare const countAssets: ({ collection, satellite }: {
    collection: string;
    satellite: SatelliteParameters;
}) => Promise<bigint>;
export declare const deleteDocs: ({ collection, satellite }: {
    collection: string;
    satellite: SatelliteParameters;
}) => Promise<void>;
export declare const deleteAssets: ({ collection, satellite }: {
    collection: string;
    satellite: SatelliteParameters;
}) => Promise<void>;
export declare const setControllers: ({ args, satellite }: {
    args: SatelliteDid.SetControllersArgs;
    satellite: SatelliteParameters;
}) => Promise<[Principal, SatelliteDid.AccessKey][]>;
export declare const deleteControllers: ({ args, satellite }: {
    args: SatelliteDid.DeleteControllersArgs;
    satellite: SatelliteParameters;
}) => Promise<[Principal, SatelliteDid.AccessKey][]>;
export declare const deleteControllerSelf: ({ satellite }: {
    satellite: SatelliteParameters;
}) => Promise<void>;
