mirror of
				https://github.com/actions/setup-node.git
				synced 2025-11-04 11:13:35 +00:00 
			
		
		
		
	* Updates * Update * Update * Update * Update * Yarn sometimes prefers npmrc, so use same token * Description * Update readme * Feedback * Add type * new toolkit and scoped registries * npmrc in RUNNER_TEMP * Dont always auth * Try exporting blank token * Get auth working for now pending runner changes * Fix string interpolation for auth token. * Don't export both userconfigs * Update authutil.js * Add single quotes for authString * Fix the registry string. * Use userconfig and append trailing slash * Keep in root of repo * Try just adding auth token * Remove auth token * Try changes again * Add tests * Npm and GPR samples * Add types
		
			
				
	
	
		
			97 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
type HookMethod<O, R> = (options: O) => R | Promise<R>
 | 
						|
 | 
						|
type BeforeHook<O> = (options: O) => void
 | 
						|
type ErrorHook<O, E> = (error: E, options: O) => void
 | 
						|
type AfterHook<O, R> = (result: R, options: O) => void
 | 
						|
type WrapHook<O, R> = (
 | 
						|
  hookMethod: HookMethod<O, R>,
 | 
						|
  options: O
 | 
						|
) => R | Promise<R>
 | 
						|
 | 
						|
type AnyHook<O, R, E> =
 | 
						|
  | BeforeHook<O>
 | 
						|
  | ErrorHook<O, E>
 | 
						|
  | AfterHook<O, R>
 | 
						|
  | WrapHook<O, R>
 | 
						|
 | 
						|
export interface HookCollection {
 | 
						|
  /**
 | 
						|
   * Invoke before and after hooks
 | 
						|
   */
 | 
						|
  (
 | 
						|
    name: string | string[],
 | 
						|
    hookMethod: HookMethod<any, any>,
 | 
						|
    options?: any
 | 
						|
  ): Promise<any>
 | 
						|
  /**
 | 
						|
   * Add `before` hook for given `name`
 | 
						|
   */
 | 
						|
  before(name: string, beforeHook: BeforeHook<any>): void
 | 
						|
  /**
 | 
						|
   * Add `error` hook for given `name`
 | 
						|
   */
 | 
						|
  error(name: string, errorHook: ErrorHook<any, any>): void
 | 
						|
  /**
 | 
						|
   * Add `after` hook for given `name`
 | 
						|
   */
 | 
						|
  after(name: string, afterHook: AfterHook<any, any>): void
 | 
						|
  /**
 | 
						|
   * Add `wrap` hook for given `name`
 | 
						|
   */
 | 
						|
  wrap(name: string, wrapHook: WrapHook<any, any>): void
 | 
						|
  /**
 | 
						|
   * Remove added hook for given `name`
 | 
						|
   */
 | 
						|
  remove(name: string, hook: AnyHook<any, any, any>): void
 | 
						|
}
 | 
						|
 | 
						|
export interface HookSingular<O, R, E> {
 | 
						|
  /**
 | 
						|
   * Invoke before and after hooks
 | 
						|
   */
 | 
						|
  (hookMethod: HookMethod<O, R>, options?: O): Promise<R>
 | 
						|
  /**
 | 
						|
   * Add `before` hook
 | 
						|
   */
 | 
						|
  before(beforeHook: BeforeHook<O>): void
 | 
						|
  /**
 | 
						|
   * Add `error` hook
 | 
						|
   */
 | 
						|
  error(errorHook: ErrorHook<O, E>): void
 | 
						|
  /**
 | 
						|
   * Add `after` hook
 | 
						|
   */
 | 
						|
  after(afterHook: AfterHook<O, R>): void
 | 
						|
  /**
 | 
						|
   * Add `wrap` hook
 | 
						|
   */
 | 
						|
  wrap(wrapHook: WrapHook<O, R>): void
 | 
						|
  /**
 | 
						|
   * Remove added hook
 | 
						|
   */
 | 
						|
  remove(hook: AnyHook<O, R, E>): void
 | 
						|
}
 | 
						|
 | 
						|
type Collection = new () => HookCollection
 | 
						|
type Singular = new <O = any, R = any, E = any>() => HookSingular<O, R, E>
 | 
						|
 | 
						|
interface Hook {
 | 
						|
  new (): HookCollection
 | 
						|
 | 
						|
  /**
 | 
						|
   * Creates a collection of hooks
 | 
						|
   */
 | 
						|
  Collection: Collection
 | 
						|
 | 
						|
  /**
 | 
						|
   * Creates a nameless hook that supports strict typings
 | 
						|
   */
 | 
						|
  Singular: Singular
 | 
						|
}
 | 
						|
 | 
						|
export const Hook: Hook
 | 
						|
export const Collection: Collection
 | 
						|
export const Singular: Singular
 | 
						|
 | 
						|
export default Hook
 |