export interface EnvValue { variable: string; } export type PublicationType = 'localMaven' | 'localDirectory' | 'remotePublic' | 'remotePrivate' | 'remotePrivateToken'; export interface LocalMavenPublication { type: 'localMaven'; } export interface LocalDirectoryPublication { type: 'localDirectory'; name?: string; path: string; } export interface RemotePublicPublication { type: 'remotePublic'; name?: string; url: string | EnvValue; allowInsecure?: boolean; } export interface RemotePrivatePublication { type: 'remotePrivate'; name?: string; url: string | EnvValue; username: string | EnvValue; password: string | EnvValue; allowInsecure?: boolean; } export type Publication = LocalMavenPublication | LocalDirectoryPublication | RemotePublicPublication | RemotePrivatePublication; export interface PluginConfig { group: string; libraryName: string; package: string; packagePath: string; projectRoot: string; publishing: Publication[]; version: string; } export type AndroidPluginProps = Pick; export type PluginProps = Partial | undefined;