import type { MarketSeatStatus } from '../../typings/ext/market-seat';
import { MARKET_SEAT_DEFAULTS } from '../../typings/ext/market-seat';
/**
 * 席位占用 ID：编译环境下由 keys+db.host 派生的宿主公钥指纹；
 * 开发环境不占席，仅返回占位（不会上报）。
 */
export declare function ensureSiteId(): string;
/**
 * 向市场登记/续期席位（core）。
 * 开发（未 SEAT_ENFORCE）：不占席，视为 unlimited。
 * 编译产物：用宿主公钥指纹占席。
 */
export declare function syncModuleSeat(moduleKey: string, opts?: {
    action?: 'occupy' | 'heartbeat' | 'release';
}): Promise<MarketSeatStatus | null>;
export declare function syncAllModuleSeats(action?: 'occupy' | 'heartbeat'): Promise<void>;
export declare function getModuleSeatStatus(moduleKey: string): MarketSeatStatus | null;
export declare function listModuleSeatStatuses(): Record<string, MarketSeatStatus>;
export declare function isModuleSeatBlocked(moduleKey: string): boolean;
/**
 * 插件调用前校验席位；开发环境直接放行。
 */
export declare function assertModuleSeatActive(moduleKey: string): Promise<void>;
export declare function formatSeatDisplay(st: MarketSeatStatus | null | undefined): {
    seatsLabel: string;
    usedLabel: string;
    blocked: boolean;
    tip?: string;
};
export declare function startMarketSeatHeartbeat(): void;
export declare function stopMarketSeatHeartbeat(): void;
/** 启动：加载模块 +（编译环境）席位同步 */
export declare function bootstrapInstalledModules(): Promise<void>;
export { MARKET_SEAT_DEFAULTS };
export { deriveHostIdentity } from './host-identity';
export { isSeatEnforced, isMarketSigEnforced } from './market-runtime';
