import type { IResourceBuilderServices } from "@uipath/resource-builder-sdk"; import type { IResourceCatalogClientProxy } from "@uipath/resource-builder-sdk/clients"; import type { EnhancedResourceDefinition, IImportResourceHelper } from "@uipath/resource-builder-sdk/helpers"; import type { ResourceReferenceModel } from "@uipath/resource-builder-sdk/models"; /** One resource catalog row; the SDK does not export a name for it. */ export type CatalogEntity = NonNullable>["items"]>[number]; export interface RemoteResourceClients { catalog: IResourceCatalogClientProxy; importer: IImportResourceHelper; } export declare function getRemoteResourceClients(services: IResourceBuilderServices): RemoteResourceClients; export interface CatalogQuery { name?: string; entityTypes?: string[]; } /** Pages through the resource catalog and returns the first row `match` accepts. */ export declare function findCatalogEntityAsync(catalog: IResourceCatalogClientProxy, query: CatalogQuery, match: (entity: CatalogEntity) => boolean): Promise; export declare function toResourceReference(entity: CatalogEntity): ResourceReferenceModel; /** A catalog entity named by what a cached catalog row already holds. */ export interface CatalogReference { kind: string; type?: string; key: string; name?: string; folderPath?: string; folderKey?: string; } export declare function toCatalogReference(reference: CatalogReference): ResourceReferenceModel; /** * The export carries the resource plus its transitive dependencies, so the * definition is picked by key; `undefined` when the export holds none for it. */ export declare function exportResourceDefinitionAsync(importer: IImportResourceHelper, reference: ResourceReferenceModel): Promise; /** Reads a spec property by exact name, falling back to a case-insensitive match. */ export declare function readSpecProperty(spec: Record | null | undefined, name: string): unknown; /** Same row shape as `uip or packages entry-points`; the schemas stay JSON strings. */ export interface CatalogEntryPoint { UniqueId: string; Path: string; DisplayName: string; InputArguments: unknown; OutputArguments: unknown; } /** The `entryPoints` on an exported resource spec; `undefined` when the spec carries none. */ export declare function readSpecEntryPoints(spec: Record | null | undefined): CatalogEntryPoint[] | undefined;