import { Context, PublicKey } from '@metaplex-foundation/umi'; import { ExtraAccount } from './extraAccount'; import { BaseOracle, BaseOracleInitInfoArgs, BaseOracleUpdateInfoArgs, ExternalRegistryRecord, OracleValidation } from '../generated'; import { LifecycleChecks } from './lifecycleChecks'; import { PluginAuthority } from './pluginAuthority'; import { ExternalPluginAdapterManifest } from './externalPluginAdapterManifest'; import { BaseExternalPluginAdapter } from './externalPluginAdapters'; import { ExternalPluginAdapterKey } from './externalPluginAdapterKey'; import { ValidationResultsOffset } from './validationResultsOffset'; export type Oracle = Omit & { baseAddressConfig?: ExtraAccount; resultsOffset: ValidationResultsOffset; }; export type OraclePlugin = BaseExternalPluginAdapter & Oracle & { type: 'Oracle'; }; export type OracleInitInfoArgs = Omit & { type: 'Oracle'; initPluginAuthority?: PluginAuthority; lifecycleChecks: LifecycleChecks; baseAddressConfig?: ExtraAccount; resultsOffset?: ValidationResultsOffset; }; export type OracleUpdateInfoArgs = Omit & { key: ExternalPluginAdapterKey; lifecycleChecks?: LifecycleChecks; baseAddressConfig?: ExtraAccount; resultsOffset?: ValidationResultsOffset; }; export declare function oracleInitInfoArgsToBase(o: OracleInitInfoArgs): BaseOracleInitInfoArgs; export declare function oracleUpdateInfoArgsToBase(o: OracleUpdateInfoArgs): BaseOracleUpdateInfoArgs; export declare function oracleFromBase(s: BaseOracle, r: ExternalRegistryRecord, account: Uint8Array): Oracle; export declare function findOracleAccount(context: Pick, oracle: Pick, inputs: { asset?: PublicKey; collection?: PublicKey; recipient?: PublicKey; owner?: PublicKey; }): PublicKey; export declare function deserializeOracleValidation(data: Uint8Array, offset: ValidationResultsOffset): OracleValidation; export declare const oracleManifest: ExternalPluginAdapterManifest;