/*! * Copyright (c) Microsoft Corporation and contributors. All rights reserved. * Licensed under the MIT License. */ import { type PackageNamePolicyConfig } from "../../config.js"; import { type Handler } from "./common.js"; /** * Whether the package is known to be a publicly published package for general use. */ export declare function packageMustPublishToNPM(name: string, config: PackageNamePolicyConfig): boolean; /** * Whether the package is known to be an internally published package but not to NPM. * Note that packages published to NPM will also be published internally, however. * This should be a minimal set required for legacy compat of internal partners or internal CI requirements. */ export declare function packageMustPublishToInternalFeedOnly(name: string, config: PackageNamePolicyConfig): boolean; /** * Whether the package has the option to publicly publish if it chooses. * For example, an experimental package may choose to remain unpublished until it's ready for customers to try it out. */ export declare function packageMayChooseToPublishToNPM(name: string, config: PackageNamePolicyConfig): boolean; /** * Whether the package has the option to publish to an internal feed if it chooses. */ export declare function packageMayChooseToPublishToInternalFeedOnly(name: string, config: PackageNamePolicyConfig): boolean; /** * If we haven't explicitly OK'd the package scope to publish in one of the categories above, it must be marked * private to prevent publishing. */ export declare function packageMustBePrivate(name: string, root: string): boolean; /** * If we know a package needs to publish somewhere, then it must not be marked private to allow publishing. */ export declare function packageMustNotBePrivate(name: string, root: string): boolean; /** * An array of known npm feeds used in the Fluid Framework CI pipelines. */ export declare const feeds: readonly ["public", "internal-build", "internal-test", "internal-dev"]; /** * A type representing the known npm feeds used in the Fluid Framework CI pipelines. */ export type Feed = (typeof feeds)[number]; /** * Type guard. Returns true if the provided string is a known npm feed. */ export declare function isFeed(str: string | undefined): str is Feed; /** * Determines if a package should be published to a specific npm feed per the provided config. */ export declare function packagePublishesToFeed(name: string, config: PackageNamePolicyConfig, feed: Feed): boolean; export declare const handlers: Handler[]; //# sourceMappingURL=npmPackages.d.ts.map