import { type ProviderCarrier, type ProviderCarrierInput } from "./providerCarrier.js";
export type ProviderAccessRegistryRequest = {
    registryId?: string;
    carriers?: readonly ProviderCarrierInput[];
    allowedScopes?: readonly string[];
};
export type ProviderAccessRegistry = {
    registryId: string;
    carriers: readonly ProviderCarrier[];
    carrierIds: readonly string[];
    providers: readonly string[];
    capabilities: readonly string[];
    grantedScopes: readonly string[];
    publicSafe: true;
};
export type ProviderAccessRegistryResult = {
    ok: true;
    registry: ProviderAccessRegistry;
    events: readonly string[];
} | {
    ok: false;
    error: {
        code: "MISSING_REGISTRY_ID" | "MISSING_CARRIERS" | "DUPLICATE_CARRIER_ID" | "SCOPE_DENIED" | "INVALID_CARRIER";
        message: string;
        boundary: "input" | "registry" | "scope";
        publicSafe: true;
    };
    events: readonly string[];
};
export declare function registerProviderAccessCarriers(request?: ProviderAccessRegistryRequest): ProviderAccessRegistryResult;
