export type SharedResourceMode = 'shared' | 'profile-local';
export interface SharedResourceMetadata {
    shared_resource_mode?: unknown;
    bare?: unknown;
}
export interface SharedResourcePolicy {
    mode: SharedResourceMode;
    inferred: boolean;
    profileLocal: boolean;
}
export interface SharedResourceMetadataUpdate {
    shared_resource_mode: SharedResourceMode;
    bare?: boolean | undefined;
}
export declare function isSharedResourceMode(value: unknown): value is SharedResourceMode;
export declare function resolveSharedResourcePolicy(metadata?: SharedResourceMetadata | null): SharedResourcePolicy;
export declare function isProfileLocalSharedResourceMode(metadata?: SharedResourceMetadata | null): boolean;
export declare function sharedResourceModeToMetadata(mode: SharedResourceMode): SharedResourceMetadataUpdate;
export declare function normalizeSharedResourceMetadata<T extends SharedResourceMetadata>(metadata: T): T;
//# sourceMappingURL=shared-resource-policy.d.ts.map